Files
cdTestPlant3/cdTMP/vite.config.js

80 lines
2.5 KiB
JavaScript
Raw Normal View History

2023-06-04 20:01:58 +08:00
import { defineConfig, loadEnv } from "vite"
import vue from "@vitejs/plugin-vue"
import { resolve } from "path"
import vueJsx from "@vitejs/plugin-vue-jsx"
2024-09-04 20:06:26 +08:00
import { visualizer } from "rollup-plugin-visualizer"
2025-02-04 16:39:06 +08:00
import tailwindcss from "@tailwindcss/vite"
2025-01-28 18:13:24 +08:00
2023-06-04 20:01:58 +08:00
export default ({ mode }) => {
const env = loadEnv(mode, process.cwd())
2023-08-08 09:43:46 +08:00
console.log("当前环境为:", mode)
2023-06-04 20:01:58 +08:00
const proxyPrefix = env.VITE_APP_PROXY_PREFIX
return defineConfig({
base: env.VITE_APP_BASE,
2024-09-04 20:06:26 +08:00
plugins: [
vue(),
vueJsx(),
visualizer({
open: true,
2026-03-26 21:58:14 +08:00
filename: "./dist/visualizer.html" // 分析图生成的文件名
2025-02-04 16:39:06 +08:00
}),
tailwindcss()
2024-09-04 20:06:26 +08:00
],
2023-06-04 20:01:58 +08:00
resolve: {
alias: {
"@": resolve(__dirname, "src"),
"@cps": resolve(__dirname, "src/components"),
2023-06-05 21:02:25 +08:00
"vue-i18n": "vue-i18n/dist/vue-i18n.cjs.js",
vue: "vue/dist/vue.esm-bundler.js"
2023-06-04 20:01:58 +08:00
}
},
2024-05-31 18:29:29 +08:00
define: {
__VUE_PROD_DEVTOOLS__: false,
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: false
},
2023-06-04 20:01:58 +08:00
build: {
2026-03-26 21:58:14 +08:00
chunkSizeWarningLimit: 3000
2023-08-08 09:43:46 +08:00
// assetsPublicPath: "./"
2026-03-26 21:58:14 +08:00
// v8版本又报tinymce is not defined只有遗憾业务js大的问题
/**
rolldownOptions: {
output: {
codeSplitting: {
groups: [
{
test: (id) => id.includes("tinymce"),
name: "tinymce",
}
]
}
}
}
*/
// vite v7版本配置V8已经移除
/**
2024-09-04 20:06:26 +08:00
rollupOptions: {
output: {
manualChunks: (id) => {
if (id.includes("tinymce")) return "tinymce"
return null
}
}
}
2026-03-26 21:58:14 +08:00
*/
2023-06-04 20:01:58 +08:00
},
server: {
host: "0.0.0.0",
port: env.VITE_APP_PORT || process.env.port,
proxy: {
[proxyPrefix]: {
target: env.VITE_APP_BASE_URL,
changeOrigin: true,
ws: true,
toProxy: true,
rewrite: (path) => path.replace(new RegExp(`^${proxyPrefix}`), "")
}
}
}
})
}