| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- import vue from '@vitejs/plugin-vue'
- import path from 'path'
- import { ConfigEnv, defineConfig, UserConfigExport } from 'vite'
- import ViteComponents, { AntDesignVueResolver } from 'vite-plugin-components'
- 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'
- export default ({ command, mode }: ConfigEnv): UserConfigExport => defineConfig({
- plugins: [
- vue(),
- 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
- },
- resolve: {
- alias: [
- {
- 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
- }
- })
|