EvalSourceMapDevToolPlugin
يعطيك هذا plugin تحكمًا أدق في إنشاء source maps. قد يفعّله webpack تلقائيًا عند استخدام بعض قيم خيار الإعداد devtool.
new webpack.EvalSourceMapDevToolPlugin(options);الخيارات
يدعم plugin الخيارات التالية:
-
test(stringRegExpfunction (asset) => boolean[string, RegExp, function (asset) => boolean]): يضمّن source maps للـ modules حسب الامتداد. القيمة الافتراضية تشمل.jsو.css. -
include(stringRegExpfunction (asset) => boolean[string, RegExp, function (asset) => boolean]): يضمّن source maps لمسارات modules التي تطابق القيمة المحددة. -
exclude(stringRegExpfunction (asset) => boolean[string, RegExp, function (asset) => boolean]): يستبعد modules المطابقة من إنشاء source maps. -
append(string|function): يضيف القيمة المحددة إلى asset الأصلي. غالبًا تكون تعليق#sourceMappingURL. تُستبدل[url]بعنوان URL الخاص بملف source map.ابتداءً من الإصدار 5.84.0، يسمح webpack بأن تكون قيمة
appendدالة تستقبل path data وكائن asset info، ثم ترجع string.(pathData: PathData, assetInfo?: AssetInfo) => string; -
ignoreList(stringRegExpfunction (source) => boolean[string, RegExp, function (source) => boolean]): يحدد هل يجب تجاهل ملفات source المطابقة داخل source maps. -
module(boolean): يحدد هل يجب على loaders إنشاء source maps. القيمة الافتراضيةtrue. -
moduleFilenameTemplate(string): راجعoutput.devtoolModuleFilenameTemplate. -
columns(boolean): يحدد هل تُستخدم mappings على مستوى الأعمدة. القيمة الافتراضيةtrue. -
protocol(string): يسمح بتغيير protocol الافتراضي (webpack-internal://). -
namespace(string): بادئة namespace تسمح بوجود أكثر من webpack root داخل devtools. راجعoutput.devtoolNamespace. -
noSources = false(boolean): يمنع تضمين محتوى ملفات source داخل source map. -
sourceRoot(string): يحدد قيمة مخصصة لخاصيةsourceRootداخل source maps. -
debugIds(boolean): إذا كانتtrue، فسيضيف webpack ids فريدة داخل ملفات source وsourcemaps، مما يسهل ربط sourcemaps بالبناء الصحيح. راجع اقتراح TC39 الخاص بـ sourcemap debug ID لمزيد من التفاصيل.
أمثلة
تعرض الأمثلة التالية حالات استخدام شائعة لهذا plugin.
استخدام أساسي
يمكنك استخدام الكود التالي لاستبدال خيار الإعداد devtool: eval-source-map بإعداد مخصص مكافئ باستخدام plugin:
export default {
// ...
devtool: false,
plugins: [new webpack.EvalSourceMapDevToolPlugin({})],
};استبعاد خرائط vendor
يستبعد الكود التالي source maps لأي modules داخل bundle باسم vendor.js:
new webpack.EvalSourceMapDevToolPlugin({
exclude: ["vendor.js"],
});


