webpack的CommonsChunkPlugin插件

到底是怎么样的规则 进行打包的?比如

entry: {
    main: 'main.js',
    commons: ['lib/a','lib/b']
},
plugins: [
    new webpack.optimize.CommonsChunkPlugin({
        name: 'commons'
    })
]

这样打包出来的 就是把a 和 b 分离出来

如果

entry: {
    main: 'main.js',
    commons: ['lib/a','lib/b']
},
plugins: [
    new webpack.optimize.CommonsChunkPlugin({
        names: ['main','commons']
    })
]

也仅仅是把 a b分离出来了
有什么区别吗 ?

并且跟 entry里的key 有什么关系 ?

阅读 7.5k
1 个回答

传给 CommonsChunkPlugin 一个数组参数 names: ['main','commons'],仅相当于执行两次插件方法。

plugins: [
    new webpack.optimize.CommonsChunkPlugin('main'), 
    new webpack.optimize.CommonsChunkPlugin('commons'),
]

因为 CommonsChunkPlugin 对于 main 代码块没有操作,
当然跟

plugins: [
    new webpack.optimize.CommonsChunkPlugin('commons'),
]

最后产生的结果相同

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题