このプラグインにより、ソースマップ生成のより詳細な制御が可能になります。これは、devtool
設定オプションの特定の設定によっても自動的に有効になります。
new webpack.EvalSourceMapDevToolPlugin(options);
次のオプションがサポートされています
test
(string|RegExp|array
): 拡張子に基づいてモジュールのソースマップを含めます(デフォルトは.js
と.css
)。
include
(string|RegExp|array
): 指定された値に一致するモジュールパスのソースマップを含めます。
exclude
(string|RegExp|array
): 指定された値に一致するモジュールをソースマップ生成から除外します。
append
(string|function
): 指定された値を元の資産に追加します。通常は#sourceMappingURL
コメントです。[url]
はソースマップファイルへのURLに置き換えられます。false
は追加を無効にします。
バージョン5.84.0以降、webpackではappend
オプションを関数にすることができます。この関数はパスデータとアセット情報オブジェクトを引数として受け取り、文字列を返します。
(pathData: PathData, assetInfo?: AssetInfo) => string;
moduleFilenameTemplate
(string
): output.devtoolModuleFilenameTemplate
を参照してください。
module
(boolean
): ローダーがソースマップを生成するかどうかを示します(デフォルトはtrue
)。
columns
(boolean
): 列マッピングを使用するかどうかを示します(デフォルトはtrue
)。
protocol
(string
): ユーザーがデフォルトのプロトコル(webpack-internal://
)をオーバーライドできるようにします。
次の例では、このプラグインの一般的なユースケースを示します。
次のコードを使用して、設定オプションdevtool: eval-source-map
を同等のカスタムプラグイン設定に置き換えることができます。
module.exports = {
// ...
devtool: false,
plugins: [new webpack.EvalSourceMapDevToolPlugin({})],
};
以下のコードは、vendor.js
バンドル内のすべてのモジュールについてソースマップを除外します。
new webpack.EvalSourceMapDevToolPlugin({
exclude: ['vendor.js'],
});