在我的webpack构建中,我想从CDN加载React,但不是从ReactDOM加载,因为它需要额外的往返来获取非常小的文件 .
我的webpack配置有以下代码块声明"externals",因此它不会构建这些文件(我改为包含CDN) .
webpack.config.js
...
externals: {
react: 'React'
},
...
问题是只在Retern中包含React仍会构建React,因为ReactDOM依赖于它 .
node_modules/react-dom/index.js
module.exports = require('react/lib/ReactDOM');
将 'react-dom': 'ReactDOM'
添加到外部有效地将它们从捆绑中删除,但我不想要包含ReactDOM CDN ...
如何配置webpack从CDN加载React,但在我的主包中包含ReactDOM?
注意:我使用的是webpack 2.1.0-beta17和React 15.1.0 .
Update 我尝试将 react/lib/ReactDOM
添加到外部 .
...
externals: {
react: 'React',
'react/lib/ReactDOM': 'commonjs react-dom'
},
...
但是我收到以下错误 .
require未定义
1 回答
[不是答案,评论太大了]
如果我理解正确的话,请参阅问题https://github.com/facebook/react/issues/5413,https://github.com/facebook/react/issues/6128,这些问题争论有一个反应ReactDom的CDN捆绑,它可以漂浮你的船 . 丹阿布拉莫夫感受到了,所以我很有希望 . 但请注意,ReactDOM很快就会变得更大 .