keep-alive 包裹动态组件 会缓存组件并不是销毁它,作为标签使用 <keep-alive> </keep-alive>包裹需要缓存的组件
包裹组件其中一个不需要缓存有2个办法
1.使用路由元信息 需要加上两个坑其中一个用keepalive包裹然后判断
在不需要的缓存的路由上加 meta:{
noneedCache:true
}
meta和path name同一级
在app.vue中通过{{$route}}可以获取meta中的noneedCache
<keep-alive v-if="!$route.meta.noneedCache">
<router-view/>
</keep-alive>
<router-view v-if="$route.meta.noneedCache"></router-view>
2.黑名单白名单
keepalive的属性
exclude是黑名单是没有缓存的
include是白名单有缓存的
使用黑名单可以选择不需要缓存的组件
在组件内要声明name属性和methods,data同级
<keep-alive :exclude="['live2']" :include="['live1']">
<router-view ></router-view>
</keep-alive>