首页 > 其他 > 详细

Vue中keep-alive的使用

时间:2019-12-04 10:20:05      阅读:75      评论:0      收藏:0      [点我收藏+]

Vue中keep-alive的使用我总结的有两种方式应用:

首先简述一下keep-alive的作用,kee-alive可以缓存不活动的的组件。当组件之间进行相互切换的时候,默认会销毁,当重新切换回来时又重新初始化。现在有需求切换回来不销毁组件,保持原来的状态,此时用keep-alive就可以实现了

1.我创建了两个组件,可以相互切换

组件1:

技术分享图片技术分享图片

 

 

 组件2:

技术分享图片

 

 

 技术分享图片

 

 

第一种方式,在组件1的路由中添加 meta: { keepAlive: true }, 也就是当前路由需要缓存

技术分享图片

 此时路由设置完毕,keep-alive代码可以结合v-if进行包裹,如果meta中的keepAlive为true进行缓存,否侧不进行缓存,这样可以更灵活一些。

技术分享图片

 

 

 此时组件被缓存,不会销毁,所以切换不会重新创建,自然也不会调用create等生命周期函数。不过我们可以用activated与deactivated来获取当前组件是否处于活动状态(类似钩子函数的用法)。

 

第二种方式,

在keep-alive上有两个属性:

include 值为字符串或者正则表达式匹配的组件name会被缓存。
exclude 值为字符串或正则表达式匹配的组件name不会被缓存,其它组件全部缓存。
首先利用include实现,匹配到组件中定义的name,将进行缓存

给组件一个名字:keepAlive

技术分享图片

 

 通过include设置

技术分享图片

 

 此时,也可以达到缓存keepAlive组件的目的。

 

以上是我初步总结的keep-alive的实现用法,不正之处烦请诸位指正。

 

 

 

 

 

 

参考博客原文链接为:https://blog.csdn.net/weixin_41819098/article/details/89379734

Vue中keep-alive的使用

原文:https://www.cnblogs.com/dingxingxing/p/11981123.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!