webpack
バージョン2.2.0
を使用する。`import()`チャンク(Webpack 2.2)を使用して共有コードのチャンクを制御する方法
私は単一のentry
設定のページアプリケーションを持っています:entry: { app: ['./js/main.js'] }
。これは、コード分割のためにビューを動的にロードしてimport('./js/views/1')
を経由するアプリケーションです。
私が抱えている問題は、生成されたviews/1
,views/2
などです。作成されるファイルには、内部に重複したモジュールが1つあります。ファイルとその内容は次のようになります。
- メイン:
./js/main.js
- 0:
./js/views/1.js
./js/modules/a.js
./js/modules/b.js
- 1:
./js/views/2.js
./js/modules/b.js
./js/modules/c.js
- 0:
views/1.js
とviews/2.js
の両方が共有modules/b.js
モジュールの完全なコピーを持っていることに注意してください。私の場合、私は数十のビューとより多くの共有モジュールを持っていますので、複製は私にとって大きな懸念です。ここで `WebPACKのバンドル・アナライザ」は次のようになります。
私はアドレスにこれを助けるためにCommonChunkPlugin
を追加しようとしましたが、まったくのダイナミック輸入に影響を与えていないようです。
私が探しているのは、webpackが自動的にすべての共有モジュールを別々のファイルに移動する方法です。
- メイン::01
- 0:
./js/views/1.js
- 1:
./js/views/2.js
- 2:
./js/modules/a.js
- 3:
./js/modules/b.js
理想的には、私は出力にWebPACKの次のチャンクをしたいと思います
- 4:
./js/modules/c.js
- 0:
したがって、各モジュールは文字通り別々のチャンクです。これは、HTTP2を使用してロードする最も最適な方法です。ここで
は、サンプルプロジェクトのコードです:https://github.com/EvNaverniouk/webpack-code-splitting
は、どのように私はこれを達成することができますか?
私はこれが、この問題に関連していると信じて:https://github.com/webpack/webpack/issues/3981
私はあなたが[ここ](https://stackoverflow.com/questions/44532817/property-code-splitting-modules-that-import-third-party-libraries)を持っているのと同じ問題を見ていると思います – cgatian