- 取消console.log
config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true;
- 关闭source map
productionSourceMap: false
- 开启分离js
插件安装:yarn add compression-webpack-plugin@5.0.1
config.optimization = {
runtimeChunk: 'single',
splitChunks: {
chunks: 'all',
maxInitialRequests: Infinity,
minSize: 20000,
cacheGroups: {
vendor: {
test: /[\\/]node_modules[\\/]/,
name (module) {
const packageName = module.context.match(/[\\/]node_modules[\\/](.*?)([\\/]|$)/)[1]
return `npm.${packageName.replace('@', '')}`
}
}
}
}
};
- 开启Gzip压缩
config.plugins.push(new CompressionWebpackPlugin({
algorithm: 'gzip',
test: /\.js$|\.html$|\.json$|\.css/,
threshold: 10240,
minRatio: 0.8,
deleteOriginalAssets: false
}))