美文网首页
《深入浅出 Webpack》笔记(使用 Plugin)

《深入浅出 Webpack》笔记(使用 Plugin)

作者: jasonsoop | 来源:发表于2017-12-31 14:36 被阅读0次

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

const path = require("path");
const ExtractTextPlugin = require("extract-text-webpack-plugin");

module.exports =
{
    // JavaScript 执行入口文件
    entry: "./main.js",
    
    output:
    {
        // 把所有依赖的模块合并输出到一个名为 “bundle.js” 文件中
        filename: "bundle.js",

        // 输出文件都放到 dist 目录下
        path: path.resolve(__dirname, "./dist")
    },

    module:
    {
        rules:
        [
            {
                test: /\.css$/,

                loaders: ExtractTextPlugin.extract
                ({
                    // 读取 .css 文件需要的 loader
                    use: ["css-loader"]
                })
            }
        ]
    },

    plugins:
    [
        new ExtractTextPlugin
        ({
            // 从 .js 文件提取出来的 .css 文件的名称
            filename: `[name].css`
        })
    ]
};

从以上代码可以看出,Webpack 是通过 plugins 属性来配置需要使用的插件列表的。plugins 属性是一个数组,里面的每一项都是插件的一个实例。

例如 ExtractTextPlugin 插件的作用就是提取出 JavaScript 代码里的 CSS 到一个单独的文件。我们可以通过插件的 filename 属性告诉插件输出的 CSS 文件名称,里面的 [name] 代表文件的名称,[contenthash:8] 代表根据文件内容算出的 8 位哈希值,还有更多的选项配置可以在 ExtractTextPlugin 的主页上查到。

相关文章

网友评论

      本文标题:《深入浅出 Webpack》笔记(使用 Plugin)

      本文链接:https://www.haomeiwen.com/subject/qsgogxtx.html