55 lines
1.3 KiB
TypeScript
55 lines
1.3 KiB
TypeScript
import { defineConfig } from 'vite'
|
|
import vue from '@vitejs/plugin-vue'
|
|
import { resolve } from 'path'
|
|
import legacy from '@vitejs/plugin-legacy'
|
|
import { visualizer } from 'rollup-plugin-visualizer'
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
base: './', //打包后的相对路径
|
|
define: {
|
|
'process.env': process.env //public环境
|
|
},
|
|
server: {
|
|
host: true,
|
|
port: 8080, //vite项目启动时自定义端口
|
|
|
|
open: true,
|
|
proxy: {
|
|
// 正则表达式写法
|
|
'^/api': {
|
|
target: 'http://192.168.3.151:3000/api', // 后端服务实际地址
|
|
changeOrigin: true, //开启代理
|
|
rewrite: (path) => path.replace(/^\/api/, '')
|
|
}
|
|
}
|
|
},
|
|
|
|
plugins: [
|
|
vue(),
|
|
legacy({
|
|
targets: ['defaults', 'not IE 11']
|
|
}),
|
|
visualizer({
|
|
open: true, // 构建完成后自动打开浏览器
|
|
gzipSize: true,
|
|
brotliSize: true
|
|
})
|
|
],
|
|
|
|
resolve: {
|
|
//别名
|
|
alias: {
|
|
'@': resolve(__dirname, './src'),
|
|
components: resolve(__dirname, './src/components'),
|
|
script: resolve(__dirname, './src/script'),
|
|
utils: resolve(__dirname, './src/utils')
|
|
}
|
|
},
|
|
build: {
|
|
assetsDir: 'static', //打包后的公共文件夹名
|
|
target: 'es2015',
|
|
cssTarget: ['chrome61'],
|
|
chunkSizeWarningLimit: 5000
|
|
}
|
|
})
|