Javascript 使用整个npm模块创建异步WebPack CommonChunk
我正在尝试创建一个带有Javascript 使用整个npm模块创建异步WebPack CommonChunk,javascript,webpack,webpack-2,Javascript,Webpack,Webpack 2,我正在尝试创建一个带有react dnd和两个react dnd后端的异步公共块,以及一个带有所有剩余节点实用程序的异步公共块(位于node_modules中的任何内容) 代码如下。我的react-dndbundle中确实有这三个npm实用程序,但这就是它的全部功能。它没有那些实用程序所依赖的东西,比如dnd core,等等。这些依赖关系在catch-all包中,all节点 实现我想要的最直接的方法是什么 new webpack.optimize.CommonsChunkPlugin({
react dnd
和两个react dnd
后端的异步公共块,以及一个带有所有剩余节点实用程序的异步公共块(位于node_modules
中的任何内容)
代码如下。我的react-dnd
bundle中确实有这三个npm
实用程序,但这就是它的全部功能。它没有那些实用程序所依赖的东西,比如dnd core
,等等。这些依赖关系在catch-all包中,all节点
实现我想要的最直接的方法是什么
new webpack.optimize.CommonsChunkPlugin({
filename: 'all-node.js',
async: 'all-node',
minChunks(module, count) {
var context = module.context;
return context && context.indexOf('node_modules') >= 0;
},
}),
new webpack.optimize.CommonsChunkPlugin({
chunks: ['react-dnd'],
filename: 'react-dnd.js',
async: 'react-dnd',
children: true,
minChunks(module, count) {
var context = module.context;
var targets = ['react-dnd', 'react-dnd-html5-backend', 'react-dnd-touch-backend']
return count > 1 || (context && context.indexOf('node_modules') >= 0 && targets.find(t => new RegExp('\\\\' + t + '\\\\', 'i').test(context)));
},
}),
我现在意识到这根本不是一个好主意。npm模块的依赖关系可以在彼此之间共享,因此强制将react dnd的完整依赖关系树粘贴到一个捆绑包中,而react router的完整依赖关系树粘贴到另一个捆绑包中,将导致树的并集之间的重复。我现在意识到这是一个根本上不好的主意。npm模块的依赖关系可以在彼此之间共享,因此强制将react dnd的完整依赖关系树粘贴到一个捆绑包中,而react路由器的完整依赖关系树粘贴到另一个捆绑包中,将导致树的并集之间的重复