インストール

モジュールをインストールします

  1. npm install @wordpress/custom-templated-path-webpack-plugin --save-dev

注意: このパッケージは Node.js 12.0.0 以降が必要です。古いバージョンとは互換性がありません。webpack v4 のみで動作します。

使用法

CustomTemplatedPathPlugin のインスタンスを Webpack の設定 plugins エントリに構築し、キーがテンプレートタグ名に対応するオブジェクトを渡します。各キーの値は、元の意図されたパスとアセットに対応するデータを渡された関数です。

次の例では、ビルド出力ファイルの各エントリファイルのベース名を置き換える新しい basename タグを作成します。コンパイルされると、ビルドファイルは build-entry.js として出力されます。

  1. const { basename } = require( 'path' );
  2. const CustomTemplatedPathPlugin = require( '@wordpress/custom-templated-path-webpack-plugin' );
  3. module.exports = {
  4. // ...
  5. entry: './entry',
  6. output: {
  7. filename: 'build-[basename].js',
  8. },
  9. plugins: [
  10. new CustomTemplatedPathPlugin( {
  11. basename( path, data ) {
  12. let rawRequest;
  13. const entryModule = get( data, [ 'chunk', 'entryModule' ], {} );
  14. switch ( entryModule.type ) {
  15. case 'javascript/auto':
  16. rawRequest = entryModule.rawRequest;
  17. break;
  18. case 'javascript/esm':
  19. rawRequest = entryModule.rootModule.rawRequest;
  20. break;
  21. }
  22. if ( rawRequest ) {
  23. return basename( rawRequest );
  24. }
  25. return path;
  26. },
  27. } ),
  28. ],
  29. };

詳細な例については、Webpack の独自の TemplatedPathPlugin.js を参照してください。これは基本的なテンプレートタグのセットを実装しています。

このパッケージへの貢献

これは Gutenberg プロジェクトの一部である個別のパッケージです。このプロジェクトはモノレポとして整理されています。特定の目的を持つ複数の自己完結型ソフトウェアパッケージで構成されています。このモノレポ内のパッケージは npm に公開され、WordPress や他のソフトウェアプロジェクトで使用されています。

このパッケージや Gutenberg 全体への貢献について詳しく知りたい場合は、プロジェクトの主要な 貢献者ガイド をお読みください。