通用环境:
1.将webpack和node.js的版本升级,更新版本往往会带来更高的性能
2.将loader应用于最少数量的必要模块
{test:/\.js$/,include:path.resolve(__dirname,'src'), // 只解析src目录下的文件,忽略其他文件,提升构建性能loader:'babel-loader'}
3.每个额外的loader/plugin都有启动时间,减少使用工具,减少启动时间。
4.减少编译结果的整体大小,提高构建性能,保持chunk体积小:
使用体积更小的library
多页面应用使用splitChunksPlugin,并开启async模式
移除未引用代码
5.持久化缓存
在webpack中使用cache选项,将cache类型设置为内存或文件系统
module.exports= {cache:{type:'memory'}}
6.worker pool
thread-loader 可以将非常消耗资源的loader分流给一个woeker pool
module: {rules: [{test: /\.js$/,exclude: /node_modules/,use: [{loader: "babel-loader",options: {presets:['@babel/preset-env']//解析es6}},{loader: "thread-loader",options: {workers:2}}]}]}
