vite中文网文档地址:vite中文网
文章最后附上vite.config.js完整代码
项目码云地址: https://gitee.com/April_lee/admin-project
文章vite版本基于: "^2.0.5"
Vite 2.0 core 现在与框架无关。现在通过@vitejs/plugin-vue这个插件来支持Vue。
npm i @vitejs/plugin-vue
or
yarn add @vitejs/plugin-vue
然后在vite.config.js中导入这3个依赖
import { defineConfig } from "vite"; // 帮手函数,这样不用 jsdoc 注解也可以获取类型提示
import { resolve } from "path"; // 主要用于alias文件路径别名
import vue from '@vitejs/plugin-vue';
然后基于resolve写个小方法,方便以后新增别名使用(非必要)
function pathResolve(dir) {
return resolve(__dirname, ".", dir);
}
接下来进入重要环节
export default defineConfig({
plugins:[vue()], // 配置需要使用的插件列表,这里将vue添加进去
// 配置文件别名 vite1.0是/@/ 2.0改为/@
// 这里是将src目录配置别名为 /@ 方便在项目中导入src目录下的文件
resolve: {
alias: {
"/@": pathResolve("src"),
}
},
// 强制预构建插件包
optimizeDeps: {
include: ['axios'],
},
// 打包配置
build: {
target: 'modules',
outDir: 'dist', //指定输出路径
assetsDir: 'assets', // 指定生成静态资源的存放路径
minify: 'terser' // 混淆器,terser构建后文件体积更小
},
// 本地运行配置,及反向代理配置
server: {
cors: true, // 默认启用并允许任何源
open: true, // 在服务器启动时自动在浏览器中打开应用程序
//反向代理配置,注意rewrite写法,开始没看文档在这里踩了坑
proxy: {
'/api': {
target: 'http://192.168.99.223:3000', //代理接口
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '')
}
}
}
})
以上就是vue.config.js文件的基本配置,需要更多配置的可以参考文档进行配置
下面附上我自己的完整代码
import { defineConfig } from "vite";
import { resolve } from "path";
import vue from '@vitejs/plugin-vue';
function pathResolve(dir) {
return resolve(__dirname, ".", dir);
}
export default defineConfig({
base: "",
plugins:[vue()],
resolve: {
alias: {
"/@": pathResolve("src"),
}
},
optimizeDeps: {
include: ['axios'],
},
build: {
target: 'modules',
outDir: 'dist',
assetsDir: 'assets',
minify: 'terser' // 混淆器
},
server: {
cors: true,
open: true,
proxy: {
'/api': {
target: 'http://192.168.99.223:3000', //代理接口
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '')
}
}
}
});