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 相关文章推荐
jquery live()调用不存在的解决方法
Feb 26 Javascript
jquery检测input checked 控件是否被选中的方法
Mar 26 Javascript
Javascript中的Callback方法浅析
Mar 15 Javascript
浅谈JavaScript的Polymer框架中的behaviors对象
Jul 29 Javascript
jQuery实现获取table表格第一列值的方法
Mar 01 Javascript
轻量级jQuery插件slideBox实现带底栏轮播(焦点图)代码
Mar 28 Javascript
如何消除inline-block属性带来的标签间间隙
Mar 31 Javascript
JS图片等比例缩放方法完整示例
Aug 03 Javascript
Three.js基础学习之场景对象
Sep 27 Javascript
图片懒加载imgLazyLoading.js使用详解
Sep 15 Javascript
微信小程序实现上传多个文件 超过10个
Mar 30 Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
Nov 12 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 编写的日历
2006/10/09 PHP
PHP文件操作简单介绍及函数汇总
2020/12/11 PHP
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
JavaScript 私有成员分析
2009/01/13 Javascript
functional继承模式 摘自javascript:the good parts
2011/06/20 Javascript
基于jQuery实现的水平和垂直居中的div窗口
2011/08/08 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
NodeJS与Mysql的交互示例代码
2013/08/18 NodeJs
Knockout visible绑定使用方法
2013/11/15 Javascript
JS中操作JSON总结
2020/12/06 Javascript
一个支持任意尺寸的图片上下左右滑动效果
2014/08/24 Javascript
jquery实现鼠标拖拽滑动效果来选择数字的方法
2015/05/04 Javascript
Extjs实现下拉菜单效果
2016/04/01 Javascript
jQuery使用ajax跨域获取数据的简单实例
2016/05/18 Javascript
JS 实现可停顿的垂直滚动实例代码
2016/11/23 Javascript
基于JQuery实现的跑马灯效果(文字无缝向上翻动)
2016/12/02 Javascript
关于AngularJs数据的本地存储详解
2017/01/20 Javascript
countUp.js实现数字动态变化效果
2019/10/17 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
vue项目接口域名动态获取操作
2020/08/13 Javascript
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
Python学习之asyncore模块用法实例教程
2014/09/29 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
python实现双色球随机选号
2020/01/01 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
2020/12/22 Python
英国历史最悠久的DJ设备供应商:DJ Finance、DJ Warehouse、The DJ Shop
2019/09/04 全球购物
自我评价的正确写法
2013/09/19 职场文书
启动仪式策划方案
2014/06/14 职场文书
应届生求职自荐信
2014/07/04 职场文书
乡镇领导干部个人对照检查材料思想汇报
2014/09/23 职场文书
在职证明书模板
2015/06/15 职场文书
2016年优秀共青团员事迹材料
2016/02/25 职场文书
工作总结之小学教师体育工作范文(3篇)
2019/10/07 职场文书
在K8s上部署Redis集群的方法步骤
2021/04/27 Redis
Java数组详细介绍及相关工具类
2022/04/14 Java/Android