You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
2.1 KiB
70 lines
2.1 KiB
import vue from '@vitejs/plugin-vue' |
|
// config alias |
|
import path from 'path' |
|
import { ConfigEnv, defineConfig, UserConfigExport } from 'vite' |
|
import ViteComponents, { AntDesignVueResolver } from 'vite-plugin-components' |
|
// Introduce eslint plugin |
|
import eslintPlugin from 'vite-plugin-eslint' |
|
import OptimizationPersist from 'vite-plugin-optimize-persist' |
|
import PkgConfig from 'vite-plugin-package-config' |
|
import viteSvgIcons from 'vite-plugin-svg-icons' |
|
import { viteVConsole } from 'vite-plugin-vconsole' |
|
|
|
// https://vitejs.dev/config/ |
|
export default ({ command, mode }: ConfigEnv): UserConfigExport => defineConfig({ |
|
plugins: [ |
|
vue(), |
|
eslintPlugin({ |
|
fix: true |
|
}), |
|
ViteComponents({ |
|
customComponentResolvers: [AntDesignVueResolver()], |
|
}), |
|
viteSvgIcons({ |
|
// 指定需要缓存的图标文件夹 |
|
iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')], |
|
// 指定symbolId格式 |
|
symbolId: 'icon-[dir]-[name]', |
|
}), |
|
viteVConsole({ |
|
entry: path.resolve(__dirname, './src/main.ts'), // 入口文件 |
|
localEnabled: command === 'serve', // serve开发环境下 |
|
// enabled: command !== 'serve' || mode === 'test', // 打包环境下/发布测试包, |
|
config: { // vconsole 配置项 |
|
maxLogNumber: 1000, |
|
theme: 'light' |
|
} |
|
}), |
|
PkgConfig(), |
|
OptimizationPersist() |
|
// [svgBuilder('./src/assets/icons/')] // All svg under src/icons/svg/ have been imported here, no need to import separately |
|
], |
|
server: { |
|
open: true, |
|
host: '0.0.0.0', |
|
port: 8080 |
|
}, |
|
envDir: './env', |
|
resolve: { |
|
alias: [{ |
|
// https://github.com/vitejs/vite/issues/279#issuecomment-635646269 |
|
find: '/@', |
|
replacement: path.resolve(__dirname, './src'), |
|
} |
|
] |
|
}, |
|
css: { |
|
preprocessorOptions: { |
|
scss: { |
|
// example : additionalData: `@import "./src/design/styles/variables";` |
|
// dont need include file extend .scss |
|
additionalData: '@import "./src/styles/variables";' |
|
}, |
|
} |
|
}, |
|
base: '/', |
|
build: { |
|
target: ['es2015'], // 最低支持 es2015 |
|
sourcemap: true |
|
} |
|
})
|
|
|