强制重新加载在JavaScript中跳过服务工作者 [英] Force reload skipping Service Worker in JavaScript

查看:61
本文介绍了强制重新加载在JavaScript中跳过服务工作者的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

Service Workers can interfere with the refresh button (by design). On desktop Chrome, you can hold shift and click the refresh button to do a hard reload, ignoring any installed ServiceWorker.

有没有办法强制重新加载忽略SW在JavaScript?

Is there a way to force a reload ignoring the SW in JavaScript?

(我想这样,所以如果SW开始行为不端,我可以给移动用户一个推按钮。电话没有移位键。)

(I want this so I can give mobile users a button to push if the SW starts misbehaving. Phones don't have a shift key.)

推荐答案

如果您在刷新之前取消注册服务工作者,则下一页加载将没有服务工作者加载。

If you unregister the Service Worker before refreshing, the next page load will load without the Service Worker.

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

这篇关于强制重新加载在JavaScript中跳过服务工作者的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆