javascript - 在 JavaScript 中强制重新加载跳过 Service Worker

标签 javascript service-worker

Service Workers 可以干扰刷新按钮(按设计)。在桌面版 Chrome 上,您可以按住 shift 键并单击刷新按钮进行硬重新加载,忽略任何已安装的 ServiceWorker。

有没有办法强制重新加载而忽略 JavaScript 中的 SW?

(我想要这个,这样我就可以给移动用户一个按钮,让他们在 SW 开始出现问题时按下。手机没有 shift 键。)

最佳答案

如果您在刷新之前取消注册 Service Worker,则下一个页面加载将在没有 Service Worker 的情况下加载。

navigator.serviceWorker.getRegistration().then(function(reg) {
  if (reg) {
    reg.unregister().then(function() { window.location.reload(true); });
  } else {
     window.location.reload(true);
  }
});

关于javascript - 在 JavaScript 中强制重新加载跳过 Service Worker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46881906/

相关文章:

javascript - 完成百分比动画,圆形形式,带状态显示

javascript - 将参数传递给适配器时出现问题

service-worker - 添加到主屏幕未显示 PWA

reactjs - React - 取消注册已注册的服务人员

internet-explorer - 如何在 Internet Explorer 中接收 GCM/FCM 通知?

javascript - Service Worker 注册错误 : Unsupported MIME type ('text/html' )

javascript - 在 Bootstrap Accordion 标题中有一个可点击的元素

javascript - 如何检测 IE 和 Edge 浏览器?

javascript - 在单选按钮上显示/隐藏 div 并更改表单操作

javascript - 如何通过 Create React App 在开发模式下使用 Service Worker?