import { resolve } from 'path'; import { ConfigEnv, UserConfigExport } from 'vite'; import { getPluginsList } from './build/plugins'; import { buildEnvironment } from './build/buildEnv'; import { serverOptions } from './build/server'; import { exclude, include } from './build/optimize'; import { pathResolve } from './build/utils.ts'; export default ({ mode }: ConfigEnv): UserConfigExport => { // const { VITE_APP_URL } = wrapperEnv(loadEnv(mode, root)); return { resolve: { alias: { '@': resolve(__dirname, './src'), 'vue-i18n': 'vue-i18n/dist/vue-i18n.cjs.js', '@build': pathResolve(), }, }, optimizeDeps: { include, exclude }, server: serverOptions(), plugins: getPluginsList(), esbuild: { pure: ['console.log', 'debugger'], jsxFactory: 'h', jsxFragment: 'Fragment', jsxInject: "import { h } from 'vue';", }, // 配置构建过程的选项,例如是否生成压缩文件和源映射 build: buildEnvironment(), }; };