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 相关文章推荐
ASP.NET jQuery 实例17 通过使用jQuery validation插件校验ListBox
Feb 03 Javascript
jQuery自定义数值抽奖活动代码
Jun 11 Javascript
Bootstrap导航中表单简单实现代码
Mar 06 Javascript
浅谈 Vue v-model指令的实现原理
Jun 08 Javascript
js简易版购物车功能
Jun 17 Javascript
Angular中ng-repeat与ul li的多层嵌套重复问题
Jul 24 Javascript
详解JS中的柯里化(currying)
Aug 17 Javascript
聊聊那些使用前端Javascript实现的机器学习类库
Sep 18 Javascript
vue滚动轴插件better-scroll使用详解
Oct 17 Javascript
vue项目中vue-i18n和element-ui国际化开发实现过程
Apr 25 Javascript
解决layui的input独占一行的问题
Sep 10 Javascript
浅析vue中的nextTick
Dec 28 Vue.js
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
ThinkPHP的I方法使用详解
2014/06/18 PHP
50款非常棒的 jQuery 插件分享
2012/03/29 Javascript
jquery移动节点实例
2015/01/14 Javascript
jQuery使用addClass()方法给元素添加多个class样式
2015/03/26 Javascript
JavaScript中eval()函数用法详解
2015/12/14 Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
2016/01/08 Javascript
jQuery模拟360浏览器切屏效果幻灯片(附demo源码下载)
2016/01/29 Javascript
浅谈js在html中的加载执行顺序,多个jquery ready执行顺序
2016/11/26 Javascript
jquery滚动条插件(可以自定义)
2016/12/11 Javascript
Vue 短信验证码组件开发详解
2017/02/14 Javascript
JavaScript 中Date对象的格式化代码方法汇总
2017/09/06 Javascript
mac中利用NVM管理不同node版本的方法详解
2017/11/08 Javascript
ionic使用angularjs表单验证(模板验证)
2018/12/12 Javascript
vue样式穿透 ::v-deep的具体使用
2020/06/04 Javascript
vuex存取值和映射函数使用说明
2020/07/24 Javascript
在Vue里如何把网页的数据导出到Excel的方法
2020/09/30 Javascript
Python3实现带附件的定时发送邮件功能
2020/12/22 Python
解决Python 使用h5py加载文件,看不到keys()的问题
2019/02/08 Python
pyqt5 使用cv2 显示图片,摄像头的实例
2019/06/27 Python
python双端队列原理、实现与使用方法分析
2019/11/27 Python
Python分析微信好友性别比例和省份城市分布比例的方法示例【基于itchat模块】
2020/05/29 Python
PyTorch的torch.cat用法
2020/06/28 Python
python re.match()用法相关示例
2021/01/27 Python
html5 Canvas画图教程(10)—把面拆成线条模拟出圆角矩形
2013/01/09 HTML / CSS
英国的领先快速时尚零售商:In The Style
2019/03/25 全球购物
迪拜领先运动补剂零售品牌中文站:Sporter商城
2019/08/20 全球购物
教师个人鉴定材料
2014/02/08 职场文书
安全生产实施方案
2014/02/23 职场文书
聚美优品陈欧广告词
2014/03/14 职场文书
2014年商场工作总结
2014/11/22 职场文书
幼儿教师小班个人总结
2015/02/05 职场文书
员工福利申请报告
2015/05/15 职场文书
入党积极分子半年考察意见
2015/06/02 职场文书
离职证明范本
2015/06/12 职场文书
学校教学管理制度
2015/08/06 职场文书
HTML页面滚动时部分内容位置固定不滚动的实现
2021/04/14 HTML / CSS