我使用的是webpack 1.14.0,我在让CommonsChunkPlugin
以我想要的方式工作时遇到了问题。
我有一个与此类似的配置文件(我简化了它):
var webpack = require('webpack');
module.exports = {
context : __dirname,
output: {
filename: "[name].dist-[chunkhash].js",
chunkFilename: "chunk.[id]-[chunkhash].js",
path: 'js/min',
publicPath: '/js/min/',
pathinfo: true
},
// Entry points for the application
entry : {
"homepage": "/a/b/homepage.js",
"contact": "/a/b/contact.js",
"list": "/a/b/list.js"
},
resolve: {
packageAlias: false,
alias: {
"jquery": "/a/b/jquery",
"dependency-1": "/a/b/dependency-1",
"dependency-2": "/a/b/dependency-2"
}
},
plugins: [
new webpack.optimize.CommonsChunkPlugin({
name: "commons",
filename:"commons.js",
minChunks: 3
})
]
};
据我了解,CommonsChunkPlugin将分析入口点和其他产生的块文件,搜索重复的模块并将它们放入新的" commons"块。
我关注这些examples并且除了没有任何模块的commons.js文件之外什么也得不到。
我得到的只是:
entry points
。chunk
个文件(我理解的入口点的依赖关系)common.js
,它只包含webpack方法的实现。这引出了以下问题:我正确理解CommonsChunkPlugin的目标?
它只分析入口点并省略块吗?
我的模块中有90%是在AMD
中定义的,这会影响我的结果吗?