vue2.0 keep-alive最佳实践


Posted in Javascript onJuly 06, 2017

vue2.0 keep-alive的最佳实践,供大家参考,具体内容如下

1.基本用法

vue2.0提供了一个keep-alive组件用来缓存组件,避免多次加载相应的组件,减少性能消耗

<keep-alive>
<component>
 <!-- 组件将被缓存 -->
</component>
</keep-alive>

有时候 可能需要缓存整个站点的所有页面,而页面一般一进去都要触发请求的
在使用keep-alive的情况下

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

将首次触发请求写在created钩子函数中,就能实现缓存,
比如列表页,去了详情页 回来,还是在原来的页面

2.缓存部分页面或者组件

(1)使用router. meta属性

// 这是目前用的比较多的方式
<keep-alive>
  <router-view v-if="!$route.meta.notKeepAlive"></router-view>
</keep-alive>
<router-view v-if="$route.meta.notKeepAlive"></router-view>

router设置

... 
 routes: [
  { path: '/', redirect: '/index', component: Index, meta: { keepAlive: true }},
  {
   path: '/common',
   component: TestParent,
   children: [
    { path: '/test2', component: Test2, meta: { keepAlive: true } } 
   ]
  }
  ....
  // 表示index和test2都使用keep-alive

(2).使用新增属性inlcude/exclude

2.1.0后提供了include/exclude两个属性 可以针对性缓存相应的组件

<!-- comma-delimited string -->
<keep-alive include="a,b">
 <component :is="view"></component>
</keep-alive>
<!-- regex (use v-bind) -->
<keep-alive :include="/a|b/">
 <component :is="view"></component>
</keep-alive>

//其中a,b是组件的name

注意:这种方法都是预先知道组件的名称的

(3)动态判断

<keep-alive :include="includedComponents">
 <router-view></router-view>
</keep-alive>

includedComponents动态设置即可

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

Javascript 相关文章推荐
BOM与DOM的区别分析
Oct 26 Javascript
jquery中的 $(&quot;#jb51&quot;)与document.getElementById(&quot;jb51&quot;) 的区别
Jul 26 Javascript
js 针对html DOM元素操作等经验累积
Mar 11 Javascript
Angular中的Promise对象($q介绍)
Mar 03 Javascript
基于JavaScript代码实现微信扫一扫下载APP
Dec 30 Javascript
基于Jquery和html5实现炫酷的3D焦点图动画
Mar 02 Javascript
jQuery+Ajax实现限制查询间隔的方法
Jun 07 Javascript
JavaScript获取服务器端时间的方法
Nov 29 Javascript
javascript实现圣旨卷轴展开效果(代码分享)
Mar 23 Javascript
JavaScript偏函数与柯里化实例详解
Mar 27 Javascript
详解从vue-loader源码分析CSS Scoped的实现
Sep 23 Javascript
Vue2.0 ES6语法降级ES5的操作
Oct 30 Javascript
angular框架实现全选与单选chekbox的自定义
Jul 06 #Javascript
详解Angular Reactive Form 表单验证
Jul 06 #Javascript
让div运动起来 js实现缓动效果
Jul 06 #Javascript
老生常谈Bootstrap媒体对象
Jul 06 #Javascript
jQuery实现选中行变色效果(实例讲解)
Jul 06 #jQuery
运用jQuery写的验证表单(实例讲解)
Jul 06 #jQuery
Textarea输入字数限制实例(兼容iOS&amp;安卓)
Jul 06 #Javascript
You might like
php设计模式 Mediator (中介者模式)
2011/06/26 PHP
深入PHP数据缓存的使用说明
2013/05/10 PHP
探讨php中遍历二维数组的几种方法详解
2013/06/08 PHP
php实现的九九乘法口诀表简洁版
2014/07/28 PHP
PHP中Cookie的使用详解(简单易懂)
2017/04/28 PHP
有关js的变量作用域和this指针的讨论
2010/12/16 Javascript
prettify 代码高亮着色器google出品
2010/12/28 Javascript
JQuery与JSon实现的无刷新分页代码
2011/09/13 Javascript
jquery验证手机号码、邮箱格式是否正确示例代码
2013/07/28 Javascript
javascript中select下拉框的用法总结
2016/01/07 Javascript
省市区三级联动jquery实现代码
2020/04/15 Javascript
js 判断附件后缀的简单实现方法
2016/10/11 Javascript
js canvas实现擦除效果示例代码
2017/04/26 Javascript
bootstrap3使用bootstrap datetimepicker日期插件
2017/05/24 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
微信小程序实现图片放大预览功能
2020/10/22 Javascript
Vue实现按钮级权限方案
2019/11/21 Javascript
JavaScript事件委托实现原理及优点进行
2020/08/29 Javascript
zbar解码二维码和条形码示例
2014/02/07 Python
Python库urllib与urllib2主要区别分析
2014/07/13 Python
Python argv用法详解
2016/01/08 Python
python接口自动化(十六)--参数关联接口后传(详解)
2019/04/16 Python
Python 3 实现定义跨模块的全局变量和使用教程
2019/07/07 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
使用PyCharm安装pytest及requests的问题
2020/07/31 Python
HTML5注册表单的自动聚焦与占位文本示例代码
2013/07/19 HTML / CSS
美国浴缸、水槽和水龙头购物网站:Vintage Tub & Bath
2019/11/05 全球购物
应届大学生求职的自我评价
2013/11/17 职场文书
机电一体化专业推荐信
2013/12/03 职场文书
迟到检讨书大全
2014/01/25 职场文书
《黄河颂》教学反思
2014/02/07 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
2015暑假假期总结
2015/07/13 职场文书
linux下安装redis图文详细步骤
2021/12/04 Redis
《我的美好婚事》动画化决定纪念插画与先导PV公开
2022/04/06 日漫