vue 的keep-alive


声明:本文转载自https://my.oschina.net/u/3608045/blog/1648693,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

Vue 实现组件信息的缓存

当我们在开发vue的项目过程中,避免不了在路由切换到其他的component再返回后该组件数据会重新加载,处理这种情况我们就需要用到keep-alive来缓存vue的组件信息,使其不再重新加载。

一、在app.vue里

 <keep-alive>     <router-view></router-view> </keep-alive>  

但是这种情况会对所有的组件进行缓存,不能达到单个组件缓存的效果。

那么我们给部分组件加上,实现方法如下:

在app.vue

 <!--这里是需要keepalive的--> <keep-alive>     <router-view v-if="$route.meta.keepAlive"></router-view> <keep-alive>  <!-- 这里不会被keepAlive -->  <router-view v-if="!$route.meta.keepAlive"></router-view>  

二、 在路由的index.js页面里

 {     path: '',     name: '',     component: '',     meta: {keepAlive: true}     // 这个是需要keepalive的 }, {     path: '',     name: '',     component: ,     meta: {keepAlive: false}   // 这是不会被keepalive的 }   

这就实现了部分组件的缓存功能

如果缓存的组件想要清空数据或者执行初始化方法,在加载组件的时候调用activated钩子函数,如下:

 activated: function () {    this.data = ‘’ }  

本文发表于2018年03月21日 22:38
(c)注:本文转载自https://my.oschina.net/u/3608045/blog/1648693,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 1916 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1