webpack/examples/move-to-parent/webpack.config.js

40 lines
937 B
JavaScript
Raw Normal View History

2014-12-22 19:33:40 +08:00
var path = require("path");
var CommonsChunkPlugin = require("../../lib/optimize/CommonsChunkPlugin");
module.exports = {
entry: {
pageA: "./page?A",
pageB: "./page?B",
pageC: "./page?C",
pageD: "./page?D"
},
output: {
path: path.join(__dirname, "js"),
filename: "[name].bundle.js",
chunkFilename: "[id].chunk.js"
},
plugins: [
// check for common modules in children of pageA and move them to the parent
2015-10-31 23:31:10 +08:00
new CommonsChunkPlugin({
name: "pageA",
children: true
}),
2014-12-22 19:33:40 +08:00
// the same for pageB but move them if at least 3 children share the module
2015-10-31 23:31:10 +08:00
new CommonsChunkPlugin({
name: "pageB",
children: true,
minChunks: 3
}),
2014-12-22 19:33:40 +08:00
// the same for pageC and pageD but with a custom logic for moving
2015-10-31 23:31:10 +08:00
new CommonsChunkPlugin({
names: ["pageC", "pageD"],
children: true,
minChunks: function(module, count) {
// move only module "b"
return /b\.js$/.test(module.identifier());
}
2014-12-22 19:33:40 +08:00
})
]
2017-01-11 17:51:58 +08:00
};