mirror of
https://github.com/chinchang/web-maker.git
synced 2025-07-09 08:02:24 +02:00
update talk.html
This commit is contained in:
@ -1,9 +1,5 @@
|
|||||||
Hello
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
if (
|
if ('serviceWorker' in navigator) {
|
||||||
'serviceWorker' in navigator
|
|
||||||
) {
|
|
||||||
// Delay registration until after the page has loaded, to ensure that our
|
// Delay registration until after the page has loaded, to ensure that our
|
||||||
// precaching requests don't degrade the first visit experience.
|
// precaching requests don't degrade the first visit experience.
|
||||||
// See https://developers.google.com/web/fundamentals/instant-and-offline/service-worker/registration
|
// See https://developers.google.com/web/fundamentals/instant-and-offline/service-worker/registration
|
||||||
@ -11,17 +7,20 @@ Hello
|
|||||||
navigator.serviceWorker
|
navigator.serviceWorker
|
||||||
.register('service-worker.js')
|
.register('service-worker.js')
|
||||||
.then(function (reg) {
|
.then(function (reg) {
|
||||||
// updatefound is fired if service-worker.js changes.
|
// Check for updates
|
||||||
reg.onupdatefound = function () {
|
reg.onupdatefound = function () {
|
||||||
// The updatefound event implies that reg.installing is set; see
|
const installingWorker = reg.installing;
|
||||||
// https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event
|
|
||||||
var installingWorker = reg.installing;
|
|
||||||
|
|
||||||
installingWorker.onstatechange = function () {
|
installingWorker.onstatechange = function () {
|
||||||
/* eslint-disable default-case */
|
/* eslint-disable default-case */
|
||||||
switch (installingWorker.state) {
|
switch (installingWorker.state) {
|
||||||
case 'installed':
|
case 'installed':
|
||||||
console.log('New or updated content is available.', navigator.serviceWorker.controller);
|
if (navigator.serviceWorker.controller) {
|
||||||
|
// New content is available, refresh the page
|
||||||
|
window.location.reload();
|
||||||
|
} else {
|
||||||
|
console.log('Content is now available offline!');
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'redundant':
|
case 'redundant':
|
||||||
@ -38,20 +37,16 @@ Hello
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
console.log('controller', navigator.serviceWorker.controller)
|
window.addEventListener('message', e => {
|
||||||
window.addEventListener('message', (e) => {
|
// console.log(88, e.data);
|
||||||
console.log(88, e.data);
|
|
||||||
if (navigator.serviceWorker.controller) {
|
if (navigator.serviceWorker.controller) {
|
||||||
navigator.serviceWorker.controller.postMessage(e.data);
|
navigator.serviceWorker.controller.postMessage(e.data);
|
||||||
} else {
|
} else {
|
||||||
alert('Ooops, seems like your preview is denying updation. How about we slap a quick refresh on him?');
|
console.warn('Service worker not ready, reloading...');
|
||||||
location.reload();
|
window.location.reload();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
Reference in New Issue
Block a user