1
0
mirror of https://github.com/chinchang/web-maker.git synced 2025-02-22 22:24:00 +01:00

58 lines
1.7 KiB
HTML
Raw Normal View History

Hello
<script>
if (
'serviceWorker' in navigator
) {
// Delay registration until after the page has loaded, to ensure that our
// precaching requests don't degrade the first visit experience.
// See https://developers.google.com/web/fundamentals/instant-and-offline/service-worker/registration
window.addEventListener('load', function () {
navigator.serviceWorker
.register('service-worker.js')
.then(function (reg) {
// updatefound is fired if service-worker.js changes.
reg.onupdatefound = function () {
// The updatefound event implies that reg.installing is set; see
// https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event
var installingWorker = reg.installing;
installingWorker.onstatechange = function () {
/* eslint-disable default-case */
switch (installingWorker.state) {
case 'installed':
console.log('New or updated content is available.', navigator.serviceWorker.controller);
break;
case 'redundant':
console.error(
'The installing service worker became redundant.'
);
break;
}
};
};
})
.catch(function (e) {
console.error('Error during service worker registration:', e);
});
});
}
</script>
<script>
console.log('controller', navigator.serviceWorker.controller)
window.addEventListener('message', (e) => {
console.log(88, e.data);
if (navigator.serviceWorker.controller) {
navigator.serviceWorker.controller.postMessage(e.data);
} else {
alert('Ooops, seems like your preview is denying updation. How about we slap a quick refresh on him?');
location.reload();
}
});
</script>