网友回复
提高 Webpack 的打包速度可以通过多种方式来实现,包括优化配置、利用缓存、并行和增量编译等。以下是一些有效的方法和技巧:
1. 优化 Loader使用 include/exclude:减少 Loader 处理的文件数量,确保 Loader 只处理必要的文件。
module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: 'babel-loader' } ] }
使用缓存:一些 Loader(如 babel-loader)支持缓存,可以通过设置缓存来加速编译过程。
module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: 'babel-loader', options: { cacheDirectory: true } } } ] }2. 优化 Plugins
压缩插件:使用压缩插件(如 TerserPlugin)时,可以配置缓存和并行处理。
const TerserPlugin = require('terser-webpack-plugin'); module.exports = { optimization: { minimize: true, minimizer: [new TerserPlugin({ cache: true, parallel: true, terserOptions: { compress: { drop_console: true } } })] } }
清理无用插件:检查并移除不必要的插件,避免增加编译时间。
3. 使用多线程/多进程thread-loader:可以让某些 Loader 运行在单独的 worker pool 中。
module: { rules: [ { test: /\.js$/, include: /src/, use: [ 'thread-loader', 'babel-loader' ] } ] }
parallel-webpack:允许并行化 Webpack 构建。
4. 缓存HardSourceWebpackPlugin:为模块提供中间缓存,减少构建时间。
const HardSourceWebpackPlugin = r...
点击查看剩余70%