Browse Source

perf: 修复打包问题

曾坤森 3 months ago
parent
commit
e51ac5137b

+ 1 - 1
.env.development

@@ -1,3 +1,3 @@
 VITE_NODE_ENV= development
-VITE_API_BASE_URL= 'http://localhost:5173/'
+VITE_API_BASE_URL= 'http://localhost:5273/'
 VITE_API_DOWN_URL= 'http://192.168.1.28:5000/'

+ 1 - 1
.env.production

@@ -1,3 +1,3 @@
 VITE_NODE_ENV= production
-VITE_API_BASE_URL= 'http://192.168.1.28:5000/'
+VITE_API_BASE_URL= 'http://localhost:8080/'
 VITE_API_DOWN_URL= 'http://192.168.1.28:5000/'

+ 1 - 2
config/vite.config.base.ts

@@ -4,7 +4,6 @@ import vue from '@vitejs/plugin-vue';
 import vueJsx from '@vitejs/plugin-vue-jsx';
 import svgLoader from 'vite-svg-loader';
 import configArcoStyleImportPlugin from './plugin/arcoStyleImport';
-
 export default defineConfig({
   plugins: [
     vue(),
@@ -35,7 +34,7 @@ export default defineConfig({
   },
   define: {
     'process.env': {},
-    '__VUE_PROD_HYDRATION_MISMATCH_DETAILS__': false,
+    __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: false,
   },
   css: {
     preprocessorOptions: {

+ 1 - 0
config/vite.config.dev.ts

@@ -9,6 +9,7 @@ export default mergeConfig(
       fs: {
         strict: true,
       },
+      port: 5273,
       proxy: {
         '/api': {
           // 代理路径前缀

+ 19 - 2
config/vite.config.prod.ts

@@ -17,13 +17,30 @@ export default mergeConfig(
     build: {
       rollupOptions: {
         output: {
+          // 修改代码分割策略,将 arco 与 vue 合并到一个 chunk 中
           manualChunks: {
-            arco: ['@arco-design/web-vue'],
-            vue: ['vue', 'vue-router', 'pinia', '@vueuse/core', 'vue-i18n'],
+            // arco: ['@arco-design/web-vue'], // 暂时移除单独的 arco 分包
+            vue: [
+              'vue',
+              'vue-router',
+              'pinia',
+              '@vueuse/core',
+              'vue-i18n',
+              '@arco-design/web-vue',
+            ],
           },
+          minifyInternalExports: false,
         },
+        treeshake: false,
       },
       chunkSizeWarningLimit: 2000,
+      minify: 'esbuild',
+      esbuild: {
+        keepNames: true,
+        legalComments: 'none',
+        minifyIdentifiers: false, // 关键:不混淆标识符
+        pure: [],
+      },
     },
   },
   baseConfig

+ 3 - 2
src/api/user.ts

@@ -34,8 +34,9 @@ export function logout() {
   return axios.post<LoginRes>('/api/user/logout');
 }
 
-export function getUserInfo() {
-  return axios.post<UserState>('/api/user/info');
+export async function getUserInfo(): Promise<LoginRes> {
+  const res = await instance.post('/api/Author/GetUser');
+  return res.data;
 }
 
 export function getMenuList() {

+ 1 - 1
src/layout/default-layout.vue

@@ -28,7 +28,7 @@
                 :heading="5"
                 v-if="!collapsed"
               >
-                Smms Web
+                smms-web
               </a-typography-title>
             </a-space>
           </div>

+ 4 - 0
src/views/user/setting/index.vue

@@ -13,6 +13,10 @@
 
 <script lang="ts" setup>
 import UserPanel from './components/user-panel.vue';
+// import { getUserInfo } from '@/api/user';
+// getUserInfo().then(res => {
+//   console.log(res);
+// });
 </script>
 
 <script lang="ts">