This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The ready
read-only property of the ServiceWorkerContainer
interface provides a way of delaying code execution until a service worker is active. It returns a Promise
that will never reject, and which waits indefinitely until the ServiceWorkerRegistration
associated with the current page has an active
worker. Once that condition is met, it resolves with the ServiceWorkerRegistration
.
navigator.serviceWorker.ready.then(function(serviceWorkerRegistration) { ... });
A Promise
that will never reject, and which may eventually resolve with a ServiceWorkerRegistration
.
if ('serviceWorker' in navigator) { navigator.serviceWorker.ready .then(function(registration) { console.log('A service worker is active:', registration.active); // At this point, you can call methods that require an active // service worker, like registration.pushManager.subscribe() }); } else { console.log('Service workers are not supported.'); }
Specification | Status | Comment |
---|---|---|
Service Workers The definition of 'ServiceWorkerRegistration.ready' in that specification. | Working Draft | Initial definition. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 40 | 17
|
44
|
No | 27 | 11.1 |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | 40 | 40 | ? | 44 | 27 | 11.1 | 4.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/ready