import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
import path from 'path';
export default defineConfig({
root: process.cwd(),
base: './', // 项目部署的基础路径
publicDir: 'public', // 静态资源服务的文件夹 类型 string | false
logLevel: 'info', // 调整控制台输出的级别 'info' | 'warn' | 'error' | 'silent'
clearScreen: false, // 设为 false 可以避免 Vite 清屏而错过在终端中打印某些关键信息
plugins: [
vue(),
AutoImport({
imports: ['vue', 'vue-router'], // 自动导入 Vue 和 Vue Router 的相关函数
}),
Components({
resolvers: [ElementPlusResolver({
importStyle: 'sass',
// directives: true,
// version: "",
})], // 自动导入 Element Plus 组件
}),
],
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
},
},
css: {
preprocessorOptions: {
scss: {
additionalData: `@import "./src/styles/variables.scss";`, // 全局样式变量
},
},
},
build: {
outDir: 'dist',
assetsDir: 'assets',
minify: 'terser', // 使用 terser 进行代码压缩
terserOptions: {
compress: {
drop_console: true, // 移除 console
drop_debugger: true, // 移除 debugger
},
output: {
comments: false, // 移除注释
},
},
sourcemap: false,
},
server: {
open: true,
port: 3000,
proxy: {
"/api": {
target: "http://localhost:8000",
changeOrigin: false,
rewrite: (path) => path.replace(/^\/api/, ''), // 重写路径
},
},
},
});
Vite详细配置
最新推荐文章于 2024-07-30 16:49:30 发布