问题描述
我们将cli的内置服务工作者与angular 10一起用于PWA。该应用程序的新版本v2已发布。内置服务工作者的行为不符合预期:有时,即使先前使用同一浏览器加载了v2,也会显示该应用的旧版本v1。以下步骤说明了奇怪的行为(尽管它只是随机发生的):
我们:
- 打开应用程序:显示旧版本v1。没关系,它由SW从其缓存中提供。
- 重新加载页面:显示新版本v2。
- 关闭标签页
- 打开一个新选项卡并浏览到该应用程序。再次显示旧版本v1。为什么?此时,服务工作者应已更新其缓存并显示v2。
即使页面重新加载完成,服务工作者似乎也不会更新其缓存。我们看到这种行为非常随机地发生。通常会显示新版本,有时会突然显示旧版本。
为什么不发生缓存崩溃?
尽管在这里提供代码示例是没有用的,因为错误行为是非常随机发生的,但我们使用的是带有cli和@angular/service-worker 10.0.5
的角度为10的标准设置,而对ngsw-worker.js文件和无需收听任何服务人员事件。
有人看到类似的行为吗?我们该如何解决?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)