我尝试使用react-dnd
和两个react-dnd
后端创建一个异步公共块,并使用所有剩余节点实用程序(node_modules
中的任何内容)创建一个。
代码如下。我的react-dnd
捆绑包确实包含了这三个npm
实用程序,但这就是它的全部内容。它没有那些实用程序所依赖的东西,比如dnd-core
等。这些依赖关系在catch-all包中,all-node
什么是实现我所寻找的最直接的方式?
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)));
},
}),
答案 0 :(得分:0)
我现在意识到这是一个根本不好的主意。 npm模块的依赖关系可以在彼此之间共享,因此强制地将react-dnd的完全依赖树粘贴到一个包中,例如,在另一个包中使用react-router的完整树,将导致其树的并集之间的重复