vue-router 之 keep-alive
Posted chenglideyueguang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue-router 之 keep-alive相关的知识,希望对你有一定的参考价值。
keep-alive 简介
keep-alive是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。
router-view 也是一个组件,如果直接被包在 keep-alive 里面,所有路径匹配到的视图组件都会被缓存,例如:
// routes 配置 export default [ { path: ‘/‘, name: ‘home‘, component: Home, meta: { keepAlive: true // 需要被缓存 } }, { path: ‘/:id‘, name: ‘edit‘, component: Edit, meta: { keepAlive: false // 不需要被缓存 } }]
<transition name="router-fade" mode="out-in"> <keep-alive> <router-view v-if="$route.meta.keepAlive"> <!-- 这里是会被缓存的视图组件,比如 Home! --> </router-view> </keep-alive> </transition> <transition name="router-fade" mode="out-in"> <router-view v-if="!$route.meta.keepAlive"> <!-- 这里是不被缓存的视图组件,比如 Edit! --> </router-view> </transition>
以上是关于vue-router 之 keep-alive的主要内容,如果未能解决你的问题,请参考以下文章
vue-router 之 keep-alive路由缓存处理include+exclude