type
status
date
slug
summary
tags
category
icon
password
有时候我们不需要组件被重新渲染影响使用体验,或者是出于性能考虑,避免多次重复渲染降低性能,我们就可以使用
keep-alive,将组件缓存下来,维持当前的状态基本用法
与
v-if / v-else分支一起使用时,同一时间只能有一个组件被渲染:属性
keep-alive有3个属性include:匹配的组件会被缓存
exclude:匹配的组件不会被缓存
max:最多可以缓存多少组件实例,如果超过了这个数量,则会缓存活跃度比较高的组件
- 使用
include / exclude,这两个属性都有3种写法,如下所示: 
注意:以上代码里,include / exclude绑定的组件名一定要与组件的文件名保持一致
- 使用 max:
 
生命周期的变化
开启
keep-alive时,生命周期会增加两个:onActivated()和onDeactivated()初次进入页面时:
会依次调用 
onMounted()> onActivated()退出后会触发
onDeactivated(),不会触发onUnmounted()再次进入页面时:
只会触发
onActivated()事件挂载的方法等,只执行一次的放在 
onMounted中;组件每次进去执行的方法放在 onActivated中- 作者:衔蝉
 - 链接:https://xianchan.ah.cn/article/vue3-16
 - 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
 
相关文章