如何在 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 文件,将文件与它们的哈希名称链接在一起,因此可以在传送内容之前在服务器端对其进行解析。
我有一个相当简单的 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 文件,将文件与它们的哈希名称链接在一起,因此可以在传送内容之前在服务器端对其进行解析。