我有我的配置优化的WebPack如下:
optimization: {
runtimeChunk: 'single',
minimize: false,
splitChunks: {
chunks: 'all',
maxInitialRequests: Infinity,
minSize: 0,
cacheGroups: {
config: {
test: /[\\/]app[\\/]js[\\/]config[\\/]/,
minSize: 0
},
vendors: {
test: /[\\/]node_modules[\\/]/,
name(module) {
// get the name. E.g. node_modules/packageName/not/this/part.js
// or node_modules/packageName
const packageName = module.context.match(/[\\/]node_modules[\\/](.*?)([\\/]|$)/)[1];
// npm package names are URL-safe, but some servers don't like @ symbols
return `npm.${packageName.replace('@', '')}`;
},
}
},
},
},
这项工作完全和生成所有我想要的包。但是,我不希望配置包进行精缩。所有其他束应虽然精缩。到目前为止,我只找到一个全局设置,最小化:真/假。我有另一种,这种设置更精细的方式?
检查有关optimization.minimizer设置和chunkFilter选项的文档。你应该为config
块的名称。并添加这样的事情你optimization
设置:
minimizer: [
new TerserPlugin({
chunkFilter: (chunk) => {
if (chunk.name === 'CONFIG CHUNK NAME') {
return false;
}
return true;
},
}),
],
请注意,您需要导入该插件:const TerserPlugin = require('terser-webpack-plugin');
。