fix(pwa): added reload on new version

This commit is contained in:
Corentin Thomasset 2021-07-23 18:46:09 +02:00
parent c8db56c23f
commit d49da7dc3b
No known key found for this signature in database
GPG key ID: DBD997E935996158
2 changed files with 27 additions and 0 deletions

View file

@ -29,6 +29,7 @@ export default {
// Plugins to run before rendering page (https://go.nuxtjs.dev/config-plugins)
plugins: [
{src: '~/plugins/pwa-update.plugin.ts', mode: 'client'},
'~/plugins/vuetify-toast'
],

View file

@ -0,0 +1,26 @@
import { Plugin } from '@nuxt/types'
const pwaUpdatePlugin: Plugin = async () => {
// @ts-ignore
const workbox = await window.$workbox
if (!workbox) {
// eslint-disable-next-line no-console
console.debug("Workbox couldn't be loaded.")
return
}
workbox.addEventListener('installed', (event: { isUpdate: boolean }) => {
if (!event.isUpdate) {
// eslint-disable-next-line no-console
console.debug('The PWA is on the latest version.')
return
}
// eslint-disable-next-line no-console
console.debug('There is an update for the PWA, reloading...')
window.location.reload()
})
}
export default pwaUpdatePlugin