From 4524b02fc51529b4ef0a9bbf63538fd6bc3bc24f Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期六, 07 三月 2026 10:45:30 +0800
Subject: [PATCH] yys 测试打包优化
---
vite.config.js | 53 +++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 39 insertions(+), 14 deletions(-)
diff --git a/vite.config.js b/vite.config.js
index dc687a8..692255a 100644
--- a/vite.config.js
+++ b/vite.config.js
@@ -14,54 +14,68 @@
env.VITE_APP_ENV === "development"
? "http://1.15.17.182:9002"
: env.VITE_JAVA_API;
+
return {
define:{
__BASE_API__: JSON.stringify(javaUrl)
},
- // 閮ㄧ讲鐢熶骇鐜鍜屽紑鍙戠幆澧冧笅鐨刄RL銆�
- // 榛樿鎯呭喌涓嬶紝vite 浼氬亣璁句綘鐨勫簲鐢ㄦ槸琚儴缃插湪涓�涓煙鍚嶇殑鏍硅矾寰勪笂
- // 渚嬪 https://www.ruoyi.vip/銆傚鏋滃簲鐢ㄨ閮ㄧ讲鍦ㄤ竴涓瓙璺緞涓婏紝浣犲氨闇�瑕佺敤杩欎釜閫夐」鎸囧畾杩欎釜瀛愯矾寰勩�備緥濡傦紝濡傛灉浣犵殑搴旂敤琚儴缃插湪 https://www.ruoyi.vip/admin/锛屽垯璁剧疆 baseUrl 涓� /admin/銆�
base: VITE_APP_ENV === "production" ? "/" : "/",
plugins: createVitePlugins(env, command === "build"),
resolve: {
- // https://cn.vitejs.dev/config/#resolve-alias
alias: {
- // 璁剧疆璺緞
"~": path.resolve(__dirname, "./"),
- // 璁剧疆鍒悕
"@": path.resolve(__dirname, "./src"),
},
- // https://cn.vitejs.dev/config/#resolve-extensions
extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"],
+ dedupe: ['vue', 'axios'], // 鍘婚噸閲嶅渚濊禆
},
- // 鎵撳寘閰嶇疆
+ // 鍏ㄥ眬寮�鍚瀯寤虹紦瀛橈紙鏍稿績锛�
+ cacheDir: './node_modules/.vite',
+ // 渚濊禆棰勬瀯寤轰紭鍖�
+ optimizeDeps: {
+ include: ['vue', 'axios', 'element-plus', 'echarts'], // 鏍规嵁椤圭洰渚濊禆璋冩暣
+ disabled: false,
+ esbuildOptions: {
+ target: 'es2020',
+ worker: true, // 寮�鍚� esbuild 澶氱嚎绋�
+ }
+ },
+ // 鎵撳寘閰嶇疆锛堟牳蹇冧紭鍖栧尯锛�
build: {
- // https://vite.dev/config/build-options.html
- sourcemap: command === "build" ? false : "inline",
+ sourcemap: false, // 褰诲簳鍏抽棴鐢熶骇鐜sourcemap
outDir: "dist",
assetsDir: "assets",
chunkSizeWarningLimit: 2000,
+ minify: 'esbuild', // 浣跨敤 esbuild 鍘嬬缉锛堟棤闇�棰濆渚濊禆锛�
+ reportCompressedSize: false, // 鍏抽棴浜х墿浣撶Н鎶ュ憡锛屽噺灏戣�楁椂
+ commonjsOptions: {
+ include: [/node_modules/, /\.commonjs$/],
+ },
rollupOptions: {
output: {
chunkFileNames: "static/js/[name]-[hash].js",
entryFileNames: "static/js/[name]-[hash].js",
assetFileNames: "static/[ext]/[name]-[hash].[ext]",
+ // 鍒嗗寘绛栫暐锛堟媶鍒嗗ぇ渚濊禆锛�
+ manualChunks: {
+ vendor: ['vue', 'vue-router', 'pinia', 'axios'],
+ ui: ['element-plus'], // 鏍规嵁瀹為檯UI搴撹皟鏁�
+ charts: ['echarts'], // 鏈夊浘琛ㄥ簱鍒欎繚鐣欙紝鏃犲垯鍒犻櫎
+ },
},
+ cache: true,
},
},
- // vite 鐩稿叧閰嶇疆
server: {
port: 80,
host: true,
open: true,
proxy: {
- // https://cn.vitejs.dev/config/#server-proxy
"/dev-api": {
target: baseUrl,
changeOrigin: true,
rewrite: (p) => p.replace(/^\/dev-api/, ""),
},
- // springdoc proxy
"^/v3/api-docs/(.*)": {
target: baseUrl,
changeOrigin: true,
@@ -83,6 +97,17 @@
},
],
},
+ // CSS 棰勭紪璇戠紦瀛�
+ preprocessorOptions: {
+ scss: {
+ cacheDirectory: path.resolve(__dirname, './node_modules/.vite/scss-cache'),
+ },
+ },
+ },
+ // esbuild 鍏ㄥ眬閰嶇疆
+ esbuild: {
+ logOverride: { 'this-is-undefined-in-esm': 'silent' },
+ target: 'es2020',
},
};
-});
+});
\ No newline at end of file
--
Gitblit v1.9.3