123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- import { defineConfig, loadEnv } from 'vite';
- import { createViteProxy, getRootPath, getSrcPath, setupVitePlugins, viteDefine } from './build';
- import { getServiceEnvConfig } from './.env-config';
- export default defineConfig(configEnv => {
- const viteEnv = loadEnv(configEnv.mode, process.cwd()) as unknown as ImportMetaEnv;
- const rootPath = getRootPath();
- const srcPath = getSrcPath();
- const isOpenProxy = viteEnv.VITE_HTTP_PROXY === 'Y';
- const envConfig = getServiceEnvConfig(viteEnv);
- return {
- base: viteEnv.VITE_BASE_URL,
- resolve: {
- alias: {
- '~': rootPath,
- '@': srcPath,
- 'vue-i18n': 'vue-i18n/dist/vue-i18n.cjs.js'
- }
- },
- define: viteDefine,
- plugins: setupVitePlugins(viteEnv),
- css: {
- preprocessorOptions: {
- scss: {
- additionalData: `@use "./src/styles/scss/global.scss" as *;`
- }
- }
- },
- server: {
- host: '0.0.0.0',
- port: 3200,
- open: true,
- proxy: createViteProxy(isOpenProxy, envConfig)
- },
- optimizeDeps: {
- include: [
- '@antv/data-set',
- '@antv/g2',
- '@better-scroll/core',
- 'echarts',
- 'swiper',
- 'swiper/vue',
- 'vditor',
- 'wangeditor',
- 'xgplayer'
- ]
- },
- assetsInclude: ['**/*.xlsx', 'public/*'],
- build: {
- reportCompressedSize: false,
- sourcemap: false,
- commonjsOptions: {
- ignoreTryCatch: false
- }
- }
- };
- });
|