Plugins

يمتلك webpack واجهة plugins قوية وغنية. كثير من ميزات webpack الداخلية مبنية على هذه الواجهة نفسها، وهذا ما يجعل webpack مرنًا وقابلًا للتوسع.

الاسمالوصف
BannerPluginيضيف banner أعلى كل chunk يتم إنشاؤه
ChunksWebpackPluginينشئ ملفات HTML تربط entrypoints وchunks حتى تستطيع تقديم bundles
CompressionWebpackPluginيجهز نسخًا مضغوطة من assets لتقديمها باستخدام Content-Encoding
ContextReplacementPluginيغيّر context الذي يستنتجه webpack من تعبير require
CopyWebpackPluginينسخ ملفات مفردة أو مجلدات كاملة إلى مجلد البناء
DefinePluginيعرّف constants عامة تُحقن وقت التجميع
DllPluginيقسم bundles لتحسين وقت البناء بشكل كبير
EnvironmentPluginاختصار لاستخدام DefinePlugin مع مفاتيح process.env
EslintWebpackPluginplugin لتشغيل ESLint مع webpack
HotModuleReplacementPluginيفعّل Hot Module Replacement (HMR)
HtmlWebpackPluginينشئ ملفات HTML بسهولة لتقديم bundles
IgnorePluginيستبعد modules محددة من bundles
LimitChunkCountPluginيضع حدًا أدنى أو أعلى لعدد chunks لتحكم أفضل في التقسيم
MergeDuplicateChunksPluginيدمج chunks التي تحتوي modules نفسها
MinChunkSizePluginيحافظ على حجم chunk فوق حد معين
MiniCssExtractPluginينشئ ملف CSS لكل ملف JS يحتاج إلى CSS
NoEmitOnErrorsPluginيتجاوز مرحلة الإخراج عندما توجد أخطاء تجميع
NormalModuleReplacementPluginيستبدل الموارد التي تطابق regexp
ProgressPluginيعرض تقدم عملية التجميع
ProvidePluginيستخدم modules بدون الحاجة إلى import أو require في كل ملف
SourceMapDevToolPluginيوفر تحكمًا أدق في source maps
EvalSourceMapDevToolPluginيوفر تحكمًا أدق في eval source maps
SvgChunkWebpackPluginينشئ SVG sprites محسّنة بواسطة SVGO اعتمادًا على dependencies الخاصة بـ entry point
MinimizerPluginيستخدم Terser أو غيره لتصغير JS/CSS/HTML/JSON وغيرها داخل مشروعك

لمزيد من plugins الخارجية، راجع قائمة awesome-webpack.

Edit this page·

1 Contributor

RlxChap2