Plugin是用来扩展webpack功能的,通过在构建流程里注入钩子实现,它给webpack带来了很大的灵活性。

    1. const path = require('path');
    2. const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
    3. module.exports = {
    4. entry: './main.js',
    5. mode: "development",
    6. output: {
    7. filename: 'bundle.js',
    8. path: path.resolve(__dirname, './dist')
    9. },
    10. module: {
    11. rules: [
    12. {
    13. test: /\.css$/,
    14. use: ['style-loader', 'css-loader'],
    15. exclude: /node_modules/
    16. }
    17. ]
    18. },
    19. plugins: [
    20. new BundleAnalyzerPlugin()
    21. ]
    22. }

    plugins属性是一个数组,里面的每一项都是插件的一个实例,在实例化一个组件时可以通过构造函数传入这个组件所支持的配置属性。