File tree Expand file tree Collapse file tree 2 files changed +18
-3
lines changed Expand file tree Collapse file tree 2 files changed +18
-3
lines changed Original file line number Diff line number Diff line change 4141 <div class =" page-header-index-wide" >
4242 <slot >
4343 <!-- keep-alive -->
44- <router-view ref =" content" ></router-view >
44+ <keep-alive v-if =" multiTab" >
45+ <router-view ref =" content" />
46+ </keep-alive >
47+ <router-view v-else ref =" content" />
4548 </slot >
4649 </div >
4750 </div >
4851 </div >
4952</template >
5053
5154<script >
55+ import { mapState } from ' vuex'
5256import PageHeader from ' @/components/PageHeader'
5357
5458export default {
@@ -80,6 +84,11 @@ export default {
8084 tabs: {}
8185 }
8286 },
87+ computed: {
88+ ... mapState ({
89+ multiTab : state => state .app .multiTab
90+ })
91+ },
8392 mounted () {
8493 this .getPageMeta ()
8594 },
Original file line number Diff line number Diff line change 11<script >
22export default {
33 name: ' RouteView' ,
4+ props: {
5+ keepAlive: {
6+ type: Boolean ,
7+ default: true
8+ }
9+ },
410 data () {
511 return {}
612 },
@@ -17,10 +23,10 @@ export default {
1723 // 这里增加了 multiTab 的判断,当开启了 multiTab 时
1824 // 应当全部组件皆缓存,否则会导致切换页面后页面还原成原始状态
1925 // 若确实不需要,可改为 return meta.keepAlive ? inKeep : notKeep
20- if (meta .keepAlive === false ) {
26+ if (! getters . multiTab && meta .keepAlive === false ) {
2127 return notKeep
2228 }
23- return getters .multiTab || meta .keepAlive ? inKeep : notKeep
29+ return this . keepAlive || getters .multiTab || meta .keepAlive ? inKeep : notKeep
2430 }
2531}
2632 </script >
You can’t perform that action at this time.
0 commit comments