首页 文章

Service Worker文件和脱机模式

提问于
浏览
0

我是否正确理解PWA中的服务器工作文件不应由PWA缓存?据我了解,一旦注册,安装和激活,它将作为一个与浏览器环境中的页面分开的实体退出,并在找到新版本后由浏览器重新加载(我在这里省略了不重要的细节) . 所以我认为没有理由缓存服务工作者文件 . 浏览器通过将其存储在内存(或某处)中来缓存它 . 我认为缓存服务工作文件会使其代码更新的发现变得复杂,并且不会带来任何好处 .

但是,如果未缓存服务工作程序,则在刷新以脱机模式注册它的页面时尝试检索它将会出错,因为在网络关闭时服务工作程序文件不可用 .

消除此错误的最佳方法是什么?或者我应该缓存服务工作者文件?什么是最有效的策略?

我正在阅读有关PWA的一些内容,但没有找到明确的解释 . 如果可能的话,请帮助我 .

1 回答

  • 1

    你是对的 . 永远不要缓存service-worker.js .

    为了避免尝试在没有连接的情况下注册而产生的错误,只需从window.navigator.onLine检查连接状态,并在离线时跳过调用寄存器 .

    如果需要,您可以监听网络状态更改并在以后调用注册 .

相关问题