0

ベンダー バンドルが非常に大きくなったため、2 つの部分に分割したいと考えています。(1 つの部分にはすべての反応関連パッケージが含まれ、もう 1 つの部分には残りのパッケージが含まれます)。

ベンダーバンドルを作成するために現在必要なものは次のとおりです。

new webpack.optimize.CommonsChunkPlugin({
  name: ['vendor'],
  filename: '[name].bundle.js',
  minChunks: module => module.context.includes('node_modules')
})

以下にこれらのさまざまなアプローチを追加しようとしましたが、これまでのところ成功していません。

// approach 1
new webpack.optimize.CommonsChunkPlugin({
  name: 'react',
  chunks: ['vendor'],
  minChunks: ({resource}) => (/node_modules\/react/).test(resource)
})

// approach 2
new webpack.optimize.CommonsChunkPlugin({
  name: ['react'],
  filename: '[name].bundle.js',
  minChunks: ({resource}) => (/node_modules\/react/).test(resource)
})

分割は発生しますが、ブラウザで実行できません。私のコンソールでは、次のようになります。

vendor.bundle.js:1 Uncaught ReferenceError: webpackJsonp is not defined
at vendor.bundle.js:1

(anonymous) @ vendor.bundle.js:1 
12:52:57.478 react.bundle.js:55 Uncaught TypeError: Cannot read property 'call' of undefined
at __webpack_require__ (react.bundle.js:55)
at eval (react.development.js:18)
at eval (react.development.js:1356)
at Object.603 (react.bundle.js:747)
at __webpack_require__ (react.bundle.js:55)
at eval (index.js:6)
at Object.0 (react.bundle.js:156)
at __webpack_require__ (react.bundle.js:55)
at eval (index.jsx:8)
at Object.<anonymous> (client.bundle.js:1375)

html に タグを含む新しいファイルを既に読み込んでいます。

4

2 に答える 2