部署到firebase主机的ReactJS应用在首次部署后没有更新。

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

希望大家都过得好,保持安全。

我一直在尝试使用firebase将我的react应用部署到网络上,一切都很顺利,直到我尝试更新它重新部署它。它显示 ✔ Deploy complete! 但我检查网站,它显示没有更新。我试着将以下代码放入 firebase.json:

"headers": [
      {
        "source": "/service-worker.js",
        "headers": [
          {
            "key": "Cache-Control",
            "value": "no-cache"
          }
        ]
      }
    ]

但这并没有改变什么。我发布应用程序的步骤如下。

npx create-react-app firebase-test
cd firebase-test
firebase login
firebase init #I only chose hosting, chose to configure as a single-page application, wrote build as my public folder
npm run build
firebase deploy

它显示了第一次部署,但当我试图再次部署时,我没有看到任何更新。

javascript reactjs firebase command-line-interface firebase-hosting
2个回答
1
投票

你的 service-worker.js 可能还在缓存中,因为您添加了 Cache-Control 头的文件。

这意味着您的浏览器没有尝试再次请求该文件,而是从内存中提供服务。即使是标准的刷新(CTRLCMD + R)也无济于事。

尝试硬刷新(CTRL+Shift + R),或在开发者工具中手动清除应用程序的缓存。您的浏览器将重新下载 service-worker.js 对号入座 Cache-Control 头,问题就不会再发生了。

而且,像往常一样,确保你在部署前真正构建了你的应用程序:)


0
投票

如果部署完成了,你看到了一个说明,但网站没有更新,那么这意味着你的应用捆绑包没有改变,确保你在运行部署命令之前运行npm run build

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