示例vue 的keep-alive缓存功能的实现


Posted in Javascript onDecember 13, 2018

本篇文章主要介绍了vue 的keep-alive缓存功能的实现,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。

示例vue 的keep-alive缓存功能的实现

<keep-alive>是Vue的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染DOM。

<keep-alive> 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 <transition> 相似,<keep-alive> 是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。

prop:

  • include: 字符串或正则表达式。只有匹配的组件会被缓存。
  • exclude: 字符串或正则表达式。任何匹配的组件都不会被缓存。

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 = ‘'
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浅谈javascript 面向对象编程
Oct 28 Javascript
JavaScript 题型问答有答案参考
Feb 17 Javascript
input 输入框内的输入事件详细分析
Mar 17 Javascript
jQuery中add实现同时选择两个id对象
Oct 22 Javascript
Jquery post传递数组方法实现思路及代码
Apr 28 Javascript
jquery的ajaxSubmit()异步上传图片并保存表单数据演示代码
Jun 04 Javascript
javascript jq 弹出层实例
Aug 25 Javascript
简介JavaScript中的unshift()方法的使用
Jun 09 Javascript
详细解读JavaScript的跨浏览器事件处理
Aug 12 Javascript
AngularJS中controller控制器继承的使用方法
Nov 03 Javascript
JQuery样式操作、click事件以及索引值-选项卡应用示例
May 14 jQuery
Vue优化:常见会导致内存泄漏问题及优化详解
Aug 04 Javascript
Element UI框架中巧用树选择器的实现
Dec 12 #Javascript
vue-cli中安装方法(图文详细步骤)
Dec 12 #Javascript
新版小程序登录授权的方法
Dec 12 #Javascript
加快Vue项目的开发速度的方法
Dec 12 #Javascript
关于自定义Egg.js的请求级别日志详解
Dec 12 #Javascript
JS/HTML5游戏常用算法之碰撞检测 像素检测算法实例详解
Dec 12 #Javascript
d3绘制基本的柱形图的实现代码
Dec 12 #Javascript
You might like
PHP n个不重复的随机数生成代码
2009/06/23 PHP
PHP队列用法实例
2014/11/05 PHP
Javascript调试工具(下载)
2007/01/09 Javascript
dwr spring的集成实现代码
2009/03/22 Javascript
jquery 追加tr和删除tr示例代码
2013/09/12 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
Javascript中的高阶函数介绍
2015/03/15 Javascript
深入浅析NodeJs并发异步的回调处理
2015/12/21 NodeJs
js简单倒计时实现代码
2016/04/30 Javascript
javascript基本语法
2016/05/31 Javascript
JQuery获取鼠标进入和离开容器的方向
2016/12/29 Javascript
vue.js学习之UI组件开发教程
2017/07/03 Javascript
taro开发微信小程序的实践
2019/05/21 Javascript
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
[00:37]2016完美“圣”典风云人物:AMS宣传片
2016/12/06 DOTA
python 正则式 概述及常用字符
2009/05/07 Python
python3实现表白神器
2019/04/09 Python
python 实现将小图片放到另一个较大的白色或黑色背景图片中
2019/12/12 Python
使用Python进行防病毒免杀解析
2019/12/13 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
2020/01/14 Python
Python如何将函数值赋给变量
2020/04/28 Python
手把手教你将Flask应用封装成Docker服务的实现
2020/08/19 Python
贝尔帐篷精品店:Bell Tent Boutique
2019/06/12 全球购物
广州某公司软件工程师面试题
2014/12/22 面试题
室内设计专业个人的自我评价
2013/12/18 职场文书
写给女朋友的道歉信
2014/01/08 职场文书
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
幼儿园毕业寄语
2014/04/03 职场文书
小学生十佳少年事迹材料
2014/08/20 职场文书
村安全生产责任书
2014/08/25 职场文书
2014年房地产工作总结范文
2014/11/19 职场文书
研究生简历自我评
2015/03/11 职场文书
大学生入党群众意见书
2015/06/02 职场文书
招商银行收入证明
2015/06/17 职场文书
《暗黑破坏神2:重制版》本周进行第一轮A测 目前可官网进行申请报名
2021/04/07 其他游戏
Python初识逻辑与if语句及用法大全
2021/08/07 Python