पाठ 5 / 25
Plugins और extensions
Plugins के साथ Webpack functionality को extend करें।
Plugins बनाम loaders
Loaders specific file types को transform करते हैं। Plugins Webpack build lifecycle में hook करके broader tasks perform करते हैं। Plugins HTML files generate कर सकते हैं, CSS extract कर सकते हैं, code minify कर सकते हैं।
Common plugins
Production builds के लिए HtmlWebpackPlugin और MiniCssExtractPlugin use करें।
const HtmlPlugin = require('html-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
module.exports = {
plugins: [
new HtmlPlugin({ template: './src/index.html' }),
new MiniCssExtractPlugin({ filename: '[name].[contenthash].css' })
]
};
Output:
Generates index.html and extracts CSS to separate bundle
Plugin instantiation महत्वपूर्ण है
Plugins को 'new' के साथ instantiate करना जरूरी है। Plugins array को plugin instances मिलते हैं, classes नहीं।
त्वरित जाँच
त्वरित जाँच: Loaders और plugins के बीच मुख्य अंतर क्या है?
- Loaders specific files को transform करते हैं; plugins build lifecycle में hook करते हैं।
- Plugins files को process करते हैं; loaders lifecycle को extend करते हैं।
- वे अलग तरीके से एक ही चीज करते हैं।
Answer
Loaders specific files को transform करते हैं; plugins build lifecycle में hook करते हैं। — Loaders individual files पर काम करते हैं, जबकि plugins Webpack compilation process में hook करते हैं।