ServiceWorkerRegistration: unregister() 方法
注意:此功能在Web Workers中可用。
unregister()
是ServiceWorkerRegistration
接口的方法,用于注销 Service Worker 注册并返回一个Promise
。如果未找到注册,则该 Promise 将解析为 false
,否则无论注销是否成功,它都将解析为 true
(如果其他人刚刚使用相同的范围调用了ServiceWorkerContainer.register()
,则可能不会注销)。Service Worker 将在注销之前完成所有正在进行的操作。
语法
js
unregister()
参数
无。
返回值
Promise
解析为一个布尔值,指示 Service Worker 是否已注销。
示例
以下简单的示例注册了一个 Service Worker 示例,但随后立即再次注销它
js
if ("serviceWorker" in navigator) {
navigator.serviceWorker
.register("/sw.js", { scope: "/" })
.then((registration) => {
// registration worked
console.log("Registration succeeded.");
registration.unregister().then((boolean) => {
// if boolean = true, unregister is successful
});
})
.catch((error) => {
// registration failed
console.error(`Registration failed with ${error}`);
});
}
规范
规范 |
---|
Service Workers # navigator-service-worker-unregister |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。