希望大家一切顺利并保持安全。
我一直在尝试使用 firebase 将我的 React 应用程序部署到网络上,一切都很顺利,直到我尝试更新/重新部署它。它在我的终端中显示 ✔ 部署完成!
但我检查了网站,它显示没有更新。我尝试将以下代码放入 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
它显示了第一次部署,但是当我尝试再次部署时,我没有看到任何更新。
最佳答案
您的 service-worker.js
可能仍被缓存,因为您在首次访问该网站后添加了 Cache-Control
header 。
这意味着您的浏览器没有尝试再次请求该文件,而是从内存中提供该文件。即使标准刷新 (CTRL/CMD + R) 也无济于事。
尝试硬刷新 (CTRL+Shift+R),或在开发人员工具中手动清除应用程序的缓存。您的浏览器将使用正确的 Cache-Control
header 重新下载 service-worker.js
,并且问题不会再次出现。
并且,一如既往,确保在部署之前实际构建应用程序:)
关于javascript - 部署到 firebase 托管的 ReactJS 应用程序在首次部署后未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62069931/