4

私の webpack ビルドでは、ReactDOM ではなくCDN から React をロードしたいと考えています。これは、非常に小さなファイルに対して追加のラウンドトリップが必要になるためです。

私の webpack 構成には、これらのファイルをビルドしないように、「externals」を宣言する次のコード ブロックがあります (代わりに CDN を含めます)。

webpack.config.js

...

externals: {
    react: 'React'
},

...

問題は、ReactDOM が React に依存しているため、外部に React を含めるだけでも React がビルドされることです。

node_modules/react-dom/index.js

module.exports = require('react/lib/ReactDOM');

外部に追加'react-dom': 'ReactDOM'すると、両方がバンドルから効果的に削除されますが、ReactDOM CDN を含める必要はありません...

CDN から React をロードするように webpack を構成し、メイン バンドルに ReactDOM を含めるにはどうすればよいですか?


注: webpack 2.1.0-beta17 と React 15.1.0 を使用しています。


更新react/lib/ReactDOM外観 に追加してみました。

...

externals: {
    react: 'React',
    'react/lib/ReactDOM': 'commonjs react-dom'
},

...

しかし、次のエラーが発生します。

要求が定義されていません

4

1 に答える 1

2

[回答ではありません。コメントするには大きすぎます]

問題https://github.com/facebook/react/issues/5413https://github.com/facebook/react/issues/6128を参照してください。私が正しく理解していれば、ボートです。ダン・アブラモフはそれを感じているので、期待しています。ただし、ReactDOM はすぐに大きくなるという彼のコメントに注意してください。

于 2016-07-26T00:43:25.827 に答える