是否有可能在不使用间隔方法的情况下检测前端新 Service Worker 的激活(而不是安装!)?
最佳答案
如果您花时间了解 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.
}
);
关于javascript - 检测前端 Service Worker 激活,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46955415/