Webpack 优化
version: 5.0
数据分析
日志美化
friendly-errors-webpack-plugin: 可以识别某些类别的webpack错误,并给出更友好的提示node-notifier: 可以用来在命令行中显示通知
速度分析
speed-measure-webpack-plugin: 分析 webpack 构建速度
体积监控
webpack-bundle-analyzer: 分析打包体积
优化打包速度
缩小查找范围
alias: 创建 import 或 require 的别名,可以加快编译速度extensions: 尝试按顺序解析这些后缀名。将类型比较多的文件名放在前面,比如.js放在.ts前面,因为.ts文件可以被.js文件转换
缓存
cache/cache-loader:缓存生成的 webpack 模块和 chunk,来改善构建速度
多进程
thread-loader:多进程并行构建
优化打包体积
压缩
terser-webpack-plugin: 优化和压缩js资源optimize-css-assets-webpack-plugin: 优化和压缩css资源image-webpack-loader: 压缩图片purgecss-webpack-plugin: 清除无用 css 样式mini-css-extract-plugin: 分离css
tree-shaking
- 开启
mode: production - 开启
sideEffects: false
代码分割
splitChunks懒加载
scope hoisting
作用域提升