1、打包优化过程
1.目前 vite2.x 是基于 rollup 打包的,而不是 esbuild,详见这里
2.使用 rollup-plugin-visualizer(类似webpack的插件:webpack-bundle-analyzer) 进行打包分析,打包之后,会在根目录默认生成一个 report.html 文件
配置rollup-plugin-visualizer:
第一步安装:npm i rollup-plugin-visualizer -D
第二步配置:
//vite.config.ts
import { visualizer } from 'rollup-plugin-visualizer';
...
+ export default defineConfig(({ mode }: UserConfig): UserConfig => {
+ const lifecycle = process.env.npm_lifecycle_event;
......
plugins: [
// 打包分析
+ lifecycle === 'report'
? visualizer({ open: true, brotliSize: true, filename: 'report.html' })
: null
.......
第三步:修改package.json文件
// package.json
....
scripts:{
+ "report": "rimraf dist && cross-env vite build",
....
第四步:执行命令就可以生产一个report.html文件,点击浏览器打开就可以看到效果
插件:vite-plugin-compression 使用 gzip 或者 brotli 来压缩资源。
安装:yarn add vite-plugin-compression -D 或者 npm i vite-plugin-compression -D
配置vite:build.terserOptions 生产环境移除console.log he debugger
//vite.config.ts
build:{
terserOptions: {
// 生产环境下移除console
compress: {
drop_console: true,
drop_debugger: true
}
}
....
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。