构建优化

分析工具

构建速度优化

思路:从 模块搜索时间、解析时间、压缩时间、二次打包时间 入手

多进程构建

// 把它放置在其它 loader 之前
module.exports = {
  module: {
    rules: [
      {
        test: /\.js$/,
        use: ['thread-loader', 'babel-loader'],
      },
    ],
  },
};

thread-loader 需要放在 style-loader 之后:因为 thread-loader 后的 loader 没法存取文件也没法获取 webpack 的选项设置

利用缓存,提升二次构建速度

缩小打包作用域

动态链接库

优化构建体积

代码分割

分离第三方库和业务代码中的基础库,通过 SplitChunks 或动态链接库

动态 import

tree shaking

代码压缩