ServiceWorkerContainer.ready
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2018年4月以降、すべてのブラウザーで利用可能です。
ready は ServiceWorkerContainer インターフェイスの読み取り専用プロパティは、サービスワーカーがアクティブになるまでコードの実行を遅らせる方法を提供します。 決して拒否しない Promise を返し、現在のページに関連する ServiceWorkerRegistration がアクティブ(active)ワーカーを持つまで無期限に待機します。 その条件が満たされると、ServiceWorkerRegistration で解決されます。
値
Promise で、決して拒否されず、最終的には ServiceWorkerRegistration で解決される可能性があります。
例
js
if ("serviceWorker" in navigator) {
navigator.serviceWorker.ready.then((registration) => {
console.log("サービスワーカーがアクティブ:", registration.active);
// この時点で、registration.pushManager.subscribe() などの
// アクティブなサービスワーカーを必要とするメソッドを呼び出すことができます
});
} else {
console.error("サービスワーカーをサポートしていません。");
}
仕様書
| 仕様書 |
|---|
| Service Workers Nightly> # navigator-service-worker-ready> |