Vue <KeepAlive> 组件


示例

使用内置的<KeepAlive>组件使组件保留先前输入的用户输入:

<KeepAlive>
  <component :is="activeComp"></component>
</KeepAlive>
运行示例 »

请参阅下面的更多示例。


定义和用法

内置的<KeepAlive>组件用于动态组件周围,以在组件不活动时缓存组件,以便保留其状态。


道具

这个<KeepAlive>组件可以与不同的属性一起使用,以便我们可以指定应该缓存哪些组件以保持其状态。

Prop Description
none All components are cached so that their state is kept Run Example »
include Optional. Specify the names of the components that should keep their state Run Example »
exclude Optional. Specify the names of the components that should not keep their state Run Example »
max Optional. Specify the maximum number of components that should keep their state. If you specify to cache a maximum of 4 components, it will be the 4 components that were last visited that are cached Run Example »

<KeepAlive>缓存的组件的生命周期

使用内置缓存的组件<KeepAlive>组件将在activateddeactivated状态何时将它们设置或未设置为活动动态组件。

这个activated()deactivated()当此类缓存组件设置或未设置为活动组件时,生命周期挂钩可用于运行代码。


更多示例

示例

使用includeprop 指定哪些组件将缓存值:

<KeepAlive include="CompOne,CompThree">
  <component :is="activeComp"></component>
</KeepAlive>
运行示例 »

示例

使用excludeprop 指定哪些组件将不是缓存值:

<KeepAlive exclude="CompOne">
  <component :is="activeComp"></component>
</KeepAlive>
运行示例 »

示例

使用maxprop 指定有多少个最后访问的组件将缓存这些值:

<KeepAlive :max="2">
  <component :is="activeComp"></component>
</KeepAlive>
运行示例 »

相关页面

Vue教程:动态组件

Vue教程:“激活”和“停用”生命周期挂钩