|
1
2
|
<template>
<div class="main">
|
|
3
4
5
6
|
<keep-alive :include="includedComponents">
<router-view v-if="keepAlive"/>
</keep-alive>
<router-view v-if="!keepAlive"/>
|
|
7
8
9
10
|
</div>
</template>
<script>
|
|
11
12
|
import Vue from 'vue'
import {CACHE_INCLUDED_ROUTES} from "@/store/mutation-types"
|
|
13
|
|
|
14
15
16
17
18
19
20
|
export default {
name: "RouteView",
computed: {
//update-begin--Author:scott Date:20201015 for:路由缓存问题,关闭了tab页时再打开就不刷新 #842
includedComponents() {
const includedRouters = Vue.ls.get(CACHE_INCLUDED_ROUTES)
console.log("includedRouters:" + includedRouters)
|
|
21
|
|
|
22
23
24
25
26
27
28
29
30
31
|
//如果是缓存路由,则加入到 cache_included_routes
if (this.$route.meta.keepAlive && this.$route.meta.componentName) {
let cacheRouterArray = Vue.ls.get(CACHE_INCLUDED_ROUTES) || []
if (!cacheRouterArray.includes(this.$route.meta.componentName)) {
cacheRouterArray.push(this.$route.meta.componentName)
// cacheRouterArray.push("OnlCgformHeadList")
console.log("Vue ls set componentName :" + this.$route.meta.componentName)
Vue.ls.set(CACHE_INCLUDED_ROUTES, cacheRouterArray)
console.log("Vue ls includedRouterArrays :" + Vue.ls.get(CACHE_INCLUDED_ROUTES))
return cacheRouterArray;
|
|
32
33
|
}
}
|
|
34
|
return includedRouters;
|
|
35
|
},
|
|
36
37
38
39
40
41
|
//update-end--Author:scott Date:20201015 for:路由缓存问题,关闭了tab页时再打开就不刷新 #842
keepAlive() {
return this.$route.meta.keepAlive
}
},
}
|
|
42
|
</script>
|