gzip 壓縮-compression-webpack-plugin

gzip
imagemin-webpack-plugin
使用 url-loader 對小于10KB的圖片進行 Base64 編碼,減少 HTTP 請求。同時,利用 imagemin-webpack-plugin 插件對圖片進行壓縮,優(yōu)化圖片資源。

imagemin-webpack-plugin
webpack合并小文件?
vue.config.js

vue.config.js
cnd+external
在Index.html中引入cdn依賴

Index.html
vue.config.js

vue.config.js
esbuild-loader?替換 babel-loader,去掉 terser,換成?EsbuildPlugin

esbuild-loader
splitChunks 優(yōu)化大文件
vue.config.js

vue.config.js
chunks:
all:不管文件是動態(tài)還是非動態(tài)載入,統(tǒng)一將文件分離。當(dāng)頁面首次載入會引入所有的包
async:將異步加載的文件分離,首次一般不引入,到需要異步引入的組件才會引入。
initial:將異步和非異步的文件分離,如果一個文件被異步引入也被非異步引入,那它會被打包兩次(注意和all區(qū)別),用于分離頁面首次需要加載的包。
swc-loader替代 babel-loader
npm i -D @swc/core? swc-loader
vue.config.js

vue.config.js
配置文件?.swcrc

?.swcrc