0

我正在学习 webpack 以及如何使用 chunkhash 功能。在 github 上的这个示例中,它在插件中使用了“清单”名称。

它是干什么用的?我没有找到任何关于它的用例的解释。

谢谢你。

var path = require("path");
var webpack = require("../../");
module.exports = {
    entry: {
        main: "./example",
        common: ["./vendor"] // optional
    },
    output: {
        path: path.join(__dirname, "js"),
        filename: "[name].[chunkhash].js",
        chunkFilename: "[chunkhash].js"
    },
    plugins: [
        new webpack.optimize.CommonsChunkPlugin({
            names: ["common", "manifest"]
        })
        /* without the "common" chunk:
        new webpack.optimize.CommonsChunkPlugin({
            name: "manifest"
        })
        */
    ]
};
4

1 回答 1

1

晚会有点晚了,但我偶然发现了你的问题。此配置会将 webpack 的运行时和清单数据提取到单独的块中。

此处描述了该行为https://webpack.js.org/plugins/commons-chunk-plugin/#manifest-file

要将 webpack 引导逻辑提取到单独的文件中,请使用 CommonsChunkPlugin未定义nameentry. 通常manifest使用该名称。

您可以在https://webpack.js.org/concepts/manifest/阅读有关清单的更多信息,而将其提取到单独文件的原因在此处得到了很好的解释:https ://medium.com/webpack/predictable-long -term-caching-with-webpack-d3eee1d3fa31和这里:https ://webpack.js.org/guides/caching/ (供应商块的可预测命名以改进其缓存是必需的)。

于 2017-10-21T22:47:43.967 回答