keep-alive 的了解
# keep-alive 的了解
keep-alive
是 Vue 内置的一个组件,被它包裹的组件状态会被缓存,避免重新渲染 ,其有以下特性:
能在组件切换过程中将状态保留在内存中,防止重复渲染DOM。
常结合动态组件或者路由一起使用,被包裹的组件都会被缓存,不是销毁它们。
与 transition 相似,只是一个抽象组件,它不会在DOM树中渲染(真实或者虚拟都不会),也不在父组件链中存在,比如:你永远在 this.$parent 中找不到 keep-alive
可设置 include 和 exclude 和 max,即哪些可被缓存,哪些不会被缓存,以及缓存的最大个数
被keep-alive 包裹的组件有两个专属的生命周期钩子,activated 和 deactivated,分别是激活时执行和销毁时执行