ServiceWorkerRegistration.unregister()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2018年4月.
unregister() は ServiceWorkerRegistration インターフェイスのメソッドで、サービスワーカーの登録を解除し、プロミス (Promise) を返します。 登録が見つからなかった場合、プロミスは false に解決されます。 それ以外の場合は、登録解除したかどうかに関係なく、true に解決されます(誰かが同じスコープで ServiceWorkerContainer.register() を同時に呼び出した場合は、登録解除されない場合があります)。 サービスワーカーは、登録解除される前に進行中の操作を完了します。
メモ: この機能はウェブワーカーで利用できます。
構文
js
unregister() 引数
なし。
返値
Promise で、サービスワーカーが登録解除されたかどうかを示す論理値で解決します。
例
次の簡単な例では、サービスワーカーの例を登録していますが、すぐに録を解除しています。
js
if ("serviceWorker" in navigator) { navigator.serviceWorker .register("/sw.js", { scope: "/" }) .then((registration) => { // 登録に成功 console.log("登録に成功しました。"); registration.unregister().then((boolean) => { // boolean = true ならば、登録解除は成功 }); }) .catch(function (error) { // 登録に失敗しました console.error(`登録に失敗しました: ${error}`); }); } 仕様書
| Specification |
|---|
| Service Workers Nightly> # navigator-service-worker-unregister> |