1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
| <template>
| <div id="app">
| <router-view v-if="showView" />
| </div>
| </template>
| <script>
| export default {
| name: 'App',
| data () {
| return {
| // 用于点击当前页的router时,刷新当前页
| showView: true,
| beforeUnload: '',
| Handler: ''
| }
| },
| methods: {
| // 刷新当前路由方法
| refreshView () {
| this.showView = false
| this.$nextTick(() => (this.showView = true))
| },
| beforeunloadHandler () {
| this.beforeUnload = new Date().getTime();
| },
| // 页面关闭后 重置btnHide
| unloadHandler (e) {
| this.Handler = new Date().getTime() - this.beforeUnload;
| if (this.Handler <= 5) {
| var storage = window.localStorage;
| storage.clear()
| localStorage.setItem('btnHide', 1)
| }
| },
| },
|
| mounted () {
| window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
| window.addEventListener('unload', e => this.unloadHandler(e))
| },
| destroyed () {
| window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e))
| window.removeEventListener('unload', e => this.unloadHandler(e))
| },
|
| }
| </script>
|
|