如何在 Webpack 4 中为每个输出导出 contenthash 值?

How to export contenthash value for each output in Webpack 4?

我有一个相当简单的 Webpack 4 配置,它生成了几个带有自己的内容哈希的 JS 文件。

JS 示例:

entry: {
        build: './public/js/main.dev.js',
        vueApp: './public/js/vueApp/main.js'
    },
    output: {
        path: path.resolve(__dirname, './public/build'),
        publicPath: '/',
        filename: '[name].[contenthash].js'
    },

现在,为了使用服务器端渲染,我需要在生成当前 contenthash 值后以某种方式从 webpack 导出它们。有没有一种干净的方法来实现这一目标? 我已经尝试使用 html-webpack-plugin 生成一个 HTML 文件,但是在每个渲染器上解析额外的 HTML 似乎不是最优化的解决方案。

好的,所以我发现最接近答案的是 Webpack 清单插件:

https://www.npmjs.com/package/webpack-manifest-plugin

它基本上生成一个清单 JSON 文件,将文件与它们的哈希名称链接在一起,因此可以在传送内容之前在服务器端对其进行解析。