Files
exam-jyt/exam-vue/vite.config.js
T
2026-06-18 01:46:49 +08:00

60 lines
1.3 KiB
JavaScript

import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
import path from 'path'
const resolve = (dir) => path.resolve(__dirname, dir)
export default defineConfig(({ mode }) => {
const env = loadEnv(mode, process.cwd())
return {
plugins: [
vue(),
createSvgIconsPlugin({
iconDirs: [resolve('src/icons/svg')],
symbolId: 'icon-[name]'
})
],
resolve: {
alias: {
'@': resolve('src')
}
},
define: {
'process.env': {}
},
server: {
port: 9527,
open: true
},
build: {
outDir: 'dist',
assetsDir: 'static',
sourcemap: false,
rollupOptions: {
output: {
chunkFileNames: 'static/js/[name]-[hash].js',
entryFileNames: 'static/js/[name]-[hash].js',
assetFileNames: 'static/[ext]/[name]-[hash].[ext]',
manualChunks(id) {
if (id.includes('node_modules')) {
if (id.includes('element-plus')) {
return 'chunk-elementPlus'
}
return 'chunk-libs'
}
}
}
}
},
css: {
preprocessorOptions: {
scss: {
charset: false
}
}
}
}
})