問題タブ [webpack-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
255 参照

npm - Webpack プラグイン:ビルド時にプラグイン コンシューマーのファイルを読み取る方法は?

Webpack プラグインをインストールしたリポジトリの内容を読み取ることはできますか?

基本的に、呼び出し元がアプリケーション コードでrequire.contextを使用して、ビルド時にいくつかのファイルを読み取り、それらをライブラリに渡す必要がある特定のJS ライブラリを作成しました。

require.contextユーザーの負担を軽減し、ライブラリ内でその呼び出しを行って、API をこれに単純化したいと思います。

ただし、ライブラリはアプリケーション コードの Webpack ビルドがいつ実行されたかを認識していないため、機能しません。

ライブラリ内にWebpackプラグインを書いてみました:

ただし、これは、アプリケーションのビルド時ではなく、ライブラリ自体のビルド時にのみ呼び出されます。

require.context呼び出しをライブラリ (NPM の依存関係) に移動し、呼び出し元のファイルを読み取るにはどうすればよいですか?

0 投票する
1 に答える
156 参照

webpack - Webpack 5 プラグイン: モジュール エラーのコード生成エントリがありません

Webpack 4 と 5 の両方をサポートするために維持しているプラ​​グインをアップグレードしているときに、次のレンガの壁に遭遇しました。情報がまったく見つからず、Gitterの誰も助けてくれないようです。

プラグインは、問題なく動作するアセット (SVG スプライトマップ) を追加しcompilation.assetsます。プラグインには、他のプラグインとの相互運用性に必要な作成されたチャンクをユーザーが保持できる機能があります。Webpack 4 の最小限の作業コードは、次のようなものです (そして、私にはいつも少しハッキリしているように感じましたが、うまくいきました ‍♂️):

Webpack 5 で同じアプローチを使用すると、次のエラーがスローされます。

Chunk.addModuleまた、代わりに使用して修正できる廃止予定の警告も表示されますcompilation.chunkGraph.connectChunkAndModule(chunk, module);が、これは (明らかに) コード生成エントリ エラーを取り除きません。