From b7cf4931981a39137d933c81207773c5cf267649 Mon Sep 17 00:00:00 2001 From: bat Date: Sat, 25 Feb 2023 00:32:15 +0000 Subject: [PATCH] Actualizar 'app.js' const p2 = document.createElement('p') document.body.appendChild(p2) p2.appendChild(btn) --- app.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/app.js b/app.js index 98626d1..2716443 100644 --- a/app.js +++ b/app.js @@ -4,6 +4,13 @@ class Setup { const p = document.createElement("p") p.innerText = this.serviceWorkerStatus document.body.appendChild(p) + this.statusEl = p + const btn = document.createElement('button') + btn.addEventListener('click', () => this.unregister()) + btn.innerText = 'unregister' + const p2 = document.createElement('p') + document.body.appendChild(p2) + p2.appendChild(btn) } async register() { @@ -31,6 +38,27 @@ class Setup { console.error("serviceWorker not available") } } + + async unregister() { + if ('serviceWorker' in navigator) { + try { + const regs = await navigator.serviceWorker.getRegistrations() + const res = await Promise.allSettled( + regs.map(reg => reg.unregister()) + ) + this.serviceWorkerStatus = ( + res.every(pr => pr.status === 'fulfilled') ? + 'unregistered' : + 'error' + ) + } catch (err) { + console.error("error in unregister", err) + } + } else { + this.serviceWorkerStatus = 'unavailable' + } + this.statusEl.innerText = this.serviceWorkerStatus + } } new Setup().run() \ No newline at end of file