我有一个用 React 制作的 Firebase 应用程序 (create-react-app),我们即将推出我们的第一个版本。
不幸的是,每次我们部署新的更改时,当前用户(使用 Chrome)都无法看到更改,直到他们点击 cmd-shift-r,这应该会刷新缓存,从而从服务器获取新的更改而不是提供“陈旧的”。
这显然不理想,因为在错误修复后,我们必须手动要求每个使用该应用程序的人点击 cmd-shift-r 以查看修复/更改。
firebase.json
文件中做到了这一点(注意“缓存控制”和“无缓存”部分,我已经包含了其余部分上下文):
{
"hosting": {
"headers": [
{ "source":"/**",
"headers":
[
{
"key": "Cache-Control",
"value": "no-cache"
}
]
}
],
"public": "build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
}
}
但是,1)它不起作用,2)我担心这是一个有点激进的解决方案(尽管我认为我们目前不需要缓存,所以也许它并不激进)。
总而言之,每次我们推送新更改时都必须要求所有用户点击 cmd-shift-r,这似乎是一场灾难/相当不方便,而且我们似乎也不能成为第一个运行的人遇到这个问题,所以我想知道是否有更好的方法。
提前非常感谢您, 迈克尔·金
有更新吗?我也面临这个问题...