是否有可能在不使用间隔方法的情况下检测前端新服务人员的激活(而不是安装!)?
问问题
144 次
1 回答
2
如果您花时间了解ServiceWorkerContainer和ServiceWorkerRegistration接口的基本概念,这非常简单。
ServiceWorkerContainer 触发一个“controllerchange”事件,可以这样监听:
navigator.serviceWorker.addEventListener(
"controllerchange",
(activationEvent)=>{
var activatedSW = navigator.serviceWorker.controller;
//do anything with the activated service worker, e.g. opening a message channel to it, etc.
}
);
于 2017-10-26T14:12:21.923 回答