美文网首页
vue keep-alive

vue keep-alive

作者: 醉青风 | 来源:发表于2021-08-11 10:17 被阅读0次

作用:

 官方解释:会缓存不活动的组件实例,而不是销毁它们(说白了,就是保存这个页面,使里面的页面内容不被清空)

说明:( 名称 为组件内部定义的名称)

Props

include - 字符串或正则表达式。只有名称匹配的组件会被缓存。

exclude - 字符串或正则表达式。任何名称匹配的组件都不会被缓存。

max - 数字。最多可以缓存多少组件实例。

用 keep-alive 包裹的组件将会拥有这两个钩子  activated 和 deactivated

      activated  被 keep-alive 缓存的组件激活时调用。(其实就是进入当前组件的时候会触发)

      activated  被 keep-alive 缓存的组件停用时调用。(其实就是离开当前组件的时候会触发)

使用:

<keep-alive include="a,b">

  <component :is="view"></component>

</keep-alive>

<!-- 正则表达式 (使用 `v-bind`) -->

<keep-alive :include="/a|b/">

  <component :is="view"></component>

</keep-alive>

<!-- 数组 (使用 `v-bind`) -->

<keep-alive :include="['a', 'b']">

  <component :is="view"></component>

</keep-alive>

目前较好的使用方法是

在路由里面配置一个属性keepAlive来控制是否渲染在keep-alive里面,来控制是否缓存页面

<keep-alive>

   <router-view v-if='$route.meta.keepAlive'></router-view>

</keep-alive>

<router-view v-if='!$route.meta.keepAlive'></router-view>

名称

相关文章

网友评论

      本文标题:vue keep-alive

      本文链接:https://www.haomeiwen.com/subject/dwwqbltx.html