动态组件

168 阅读1分钟

动态组件指的是动态切换组件的显示与隐藏

vue 提供了一个内置的 <component> 组件,专门用来实现动态组件的渲染

image.png

keep-alive 保持状态

默认情况下,切换动态组件时无法保持组件的状态。

例如,切换组件时,会销毁当前组件,再切换回去时,会再创建一个新的组件实例

此时可以使用 vue 内置的 <keep-alive> 组件保持动态组件的状态。

image.png

keep-alive 对应的生命周期函数

当组件被缓存时,会自动触发组件的 deactivated 生命周期函数。

当组件被激活时,会自动触发组件的 activated 生命周期函数。

image.png

keep-alive 的 include 属性

include 属性用来指定:只有名称匹配的组件被缓存。多个组件名之间使用英文的逗号分隔:

image.png

keep-alive 的 exclude 属性

include 属性用来指定:只有名称匹配的组件不会被缓存