美文网首页
vue 2.0中keep-alive 组件缓存

vue 2.0中keep-alive 组件缓存

作者: MrLhx | 来源:发表于2017-06-04 22:56 被阅读0次

keep-alive用法

<keep-alive> 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 <transition> 相似,<keep-alive> 是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。
当组件在 <keep-alive> 内被切换,它的 activated 和 deactivated 这两个生命周期钩子函数将会被对应执行。主要用于保留组件状态或避免重新渲染。

在项目中有些时候组件或页面会在使用过程中重复的使用(比如:有一些列表页和设置页面),这些页面在重复的使用中会不停的创建和销毁,比如在单页面应用中通过<router-view></router-view>不断的加载。

在这个时候我们需要的就是vue2.0提供了一个 keep-alive组件用来缓存组件,避免多次加载相应的组件,减少性能消耗


1.基本用法

<keep-alive> <component> </component> </keep-alive>
或则
<keep-alive> <router-view></router-view> </keep-alive>

注:在缓存的组件里面第一只有第一次进入组件是才会触发created等生命周期钩子函数,再下次进来时只会触发activated 和 deactivated

2.动态选择缓存

在有的时候我们需要动态选择那些组件需要缓存那些不需要,vue.2.1.0后提供了include/exclude两个属性 可以针对性缓存相应的组件
<keep-alive :include="includedComponents"> <router-view></router-view> </keep-alive>

注:缓存给我们带来了好处能大大缩减页面重构时间,但是也带来了其他的麻烦 那就是 内存损耗,所以请在适当的时候使用keep-alive

相关文章

  • keep-alive

    概念 keep-alive 是 vue 内置的组件,用 keep-alive 包裹组件时,会缓存不活动的组件实例,...

  • vue2.0中keep-alive实践

    vue2.0中keep-alive实践 vue2.0提供了一个keep-alive组件,用来缓存组件,避免多次加载...

  • 重学Vue--keep-alive的使用

    keep-alive是什么? keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件...

  • [vue3进阶] 8.keepAlive

    keep-alive是vue自带的一个标签,用keep-alive包裹的组件,在这个组件不活动时,vue会自动缓存...

  • vue-router 和keep-alive

    keep-alive的介绍基本用法 vue2.0提供了一个keep-alive组件用来缓存组件,避免多次加载相应的...

  • Vue / keep-alive

    keep-alive keep-alive是Vue提供的一个抽象组件,用来对组件进行缓存,从而节省性能,由于是一个...

  • 2019-09-04 Vue / keep-alive

    keep-alive keep-alive是Vue提供的一个抽象组件,用来对组件进行缓存,从而节省性能,由于是一个...

  • Vue / keep-alive

    keep-alive keep-alive是Vue提供的一个抽象组件,用来对组件进行缓存,从而节省性能,由于是一个...

  • 27、Vue / keep-alive

    keep-alive keep-alive是Vue提供的一个抽象组件,用来对组件进行缓存,从而节省性能,由于是一个...

  • vue中缓存组件数据方案

    想要缓存VUE组件数据,首选是使用自带的keep-alive组件,使用了该组件后,被该组件包裹的组件数据都会被缓存...

网友评论

      本文标题:vue 2.0中keep-alive 组件缓存

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