vevlins
V2EX  ›  前端开发

vite 不支持 contenthash 怎么解决?

By vevlins at 2022 年 5 月 30 日 · 3981 次点击

vite 基于 rollup 打包,rollup 只有一种 hash 模式,只要一个文件修改,全部产物的 hash 都修改,相当于发版后缓存就无效了。

在 github 和 overstack 找到一些人自己实现的 outputFilename 的方法,但感觉不怎么靠谱。

是 vite/rollup 真的存在这种问题,还是我的理解错误?是否有比较靠谱的解决方案?使用 vite 的各位目前用什么解决方案?

10 条回复  •  2023-04-27 11:34:02 +08:00
Charrlles
   1
Charrlles  
   2022 年 5 月 30 日 via iPhone   ❤️ 1
是 rollup 的问题,目前似乎只能通过 hack 来解决: https://github.com/vitejs/vite/issues/6773
vevlins
   2
vevlins  
OP
   2022 年 5 月 30 日
@Charrlles 这个 issue 我看过,但我不太相信贴出来的解决方案。万一缓存出错更麻烦。
wequart
   3
wequart  
   2022 年 6 月 13 日
原来 vite 还有这个坑啊,还是继续用 webpack 吧
oojoy
   4
oojoy  
   2022 年 7 月 20 日
我也发现这个问题了,你解决了嘛
oojoy
   5
oojoy  
   2022 年 7 月 20 日
我也发现这个问题了,你最后解决了嘛
Rrrrrr
   6
Rrrrrr  
   2023 年 2 月 1 日
jaween
   7
jaween  
   2023 年 2 月 28 日
请问一下,最后是怎么解决的?
vevlins
   8
vevlins  
OP
   2023 年 2 月 28 日
@jaween 目前我没找到解决方法
jaween
   9
jaween  
   2023 年 3 月 1 日
@vevlins 我之前翻看 rollup.js ,看到官方已经改了打包算法,但是我升级到 vite4.1.0 ,打包出来还是一样,这问题无解啊。
zloong
   10
zloong  
   2023 年 4 月 27 日
同遇到这问题
© 2026 V2EX · 41ms · 3.9.8.5