【发布时间】:2018-03-16 19:30:13
【问题描述】:
有没有办法将块内容的哈希放入每个文件的文件名中,而不是整个块的哈希?
我现在正在使用这个:
output: {
filename: '[name].[chunkhash].js',
chunkFilename: 'chunk.[chunkhash].js',
},
plugins: [
new MiniCssExtractPlugin({
filename: '[name].[hash].css',
chunkFilename: 'chunk.[chunkhash].css',
}),
],
但是如果我修改 JS 文件,CSS 文件的[chunkhash] 也会改变,反之亦然。没有理由使未更改文件的缓存无效。
【问题讨论】:
-
这将是一个很棒的 GitHub 问题,因为我不相信我们对这个插件有
contenthash支持。 GitHub.com/webpack-contribs/mini-css-extract-plugin -
@SeanLarkin 从核心解决这个问题不是更好吗?如果在我编辑 JS 时 CSS 文件名发生变化,则将
[contenthash]添加到mini-css-extract-plugin将解决问题,反之亦然,对吗?每次支持新文件类型时,问题都会不断出现,不是吗? -
这是一个很好的观点,但我记得有一些限制,我现在不能说。你也可以提交到 webpack/webpack 并从那里开始。然后我们可以深入研究该功能在所有资产类型等方面的可行性。
-
@SeanLarkin 实际上已经有一个 PR 可以将它添加到 minicss:github.com/webpack-contrib/mini-css-extract-plugin/pull/30
-
这个问题的措辞有点搞笑,但我觉得是同一个问题:github.com/webpack/webpack/issues/672