✨ (new version) display button if there is a new version.
This commit is contained in:
32
src/components/NewVersion.vue
Normal file
32
src/components/NewVersion.vue
Normal file
@@ -0,0 +1,32 @@
|
||||
<template>
|
||||
<aside class="new-version" v-if="hasNewVersion">
|
||||
<button class="button is-primary" @click="reload">
|
||||
new version available
|
||||
</button>
|
||||
</aside>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { serviceWorkerBusEvent } from '@/bus/serviceWorkerEventBus'
|
||||
import { defineComponent, onMounted, ref } from 'vue'
|
||||
|
||||
export default defineComponent({
|
||||
name: 'NewVersion',
|
||||
setup() {
|
||||
const hasNewVersion = ref(false)
|
||||
onMounted(() => {
|
||||
serviceWorkerBusEvent.addEventBusListener(
|
||||
() => {
|
||||
hasNewVersion.value = true
|
||||
},
|
||||
{
|
||||
once: true,
|
||||
retro: true
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
return { hasNewVersion, reload: () => location.reload() }
|
||||
}
|
||||
})
|
||||
</script>
|
||||
Reference in New Issue
Block a user