Firebase React:如何在不强制手动刷新缓存的情况下显示新更改

问题描述 投票:0回答:1

我有一个用 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,这似乎是一场灾难/相当不方便,而且我们似乎也不能成为第一个运行的人遇到这个问题,所以我想知道是否有更好的方法。

提前非常感谢您, 迈克尔·金

javascript firebase-hosting
1个回答
0
投票

有更新吗?我也面临这个问题...

© www.soinside.com 2019 - 2024. All rights reserved.