是什么
keep-alive是一个抽象的全局组件keep-alive不会渲染一个DOM元素,也不会出现在父组件链中keep-alive包裹动态组件时,会缓存不活动的组件,而不是销毁它们
怎么用
keep-alive接收三个参数:
include:可传字符串、正则表达式、数组,名称匹配成功的组件会被缓存exclude:可传字符串、正则表达式、数组,名称匹配成功的组件不会被缓存max:可传数字,限制缓存组件的最大数量
include和exclude,传数组情况居多
// 动态组件
<keep-alive :include="allowList" :exclude="noAllowList" :max="amount">
<component :is="currentComponent"></component>
</keep-alive>
// 路由组件
<keep-alive :include="allowList" :exclude="noAllowList" :max="amount">
<router-view></router-view>
</keep-alive>
相关联
生命周期:activated(激活)、deacitvated(冻结)