Source code

Revision control

Copy as Markdown

Other Tools

<script>
var worker1 = new Worker("simple-worker.js");
var worker2 = new SharedWorker("shared-worker.js");
registerServiceWorker();
async function registerServiceWorker() {
const sw = navigator.serviceWorker;
const swr = await sw.register("service-worker.sjs", { scope: "" });
await new Promise(resolve => {
const worker = swr.installing || swr.waiting || swr.active;
if (worker.state === 'activated') {
return resolve();
}
worker.addEventListener('statechange', () => {
if (worker.state === 'activated') {
return resolve();
}
});
});
await fetch("whatever");
}
async function unregisterServiceWorker() {
const sw = navigator.serviceWorker;
const swr = await sw.register("service-worker.sjs", { scope: "" });
return swr.unregister();
}
</script>