详解vue之页面缓存问题(基于2.0)


Posted in Javascript onJanuary 10, 2017

比如有一个列表页面,然后列表每项都有一个详情,之前用vue1.x的时候,页面缓存基本没有什么问题。

在vue2.0中出现了列表页面是每次都重新加载数据,但是详情页面却只在第一次加载的时候调用数据,如果返回到列表再进入详情那么页面是不会重新渲染页面,可能是新手吧,这个问题困扰了我很久,一直没有办法解决……

根据vue-router的官方文档所说,

watch: {
  // 如果路由有变化,会再次执行该方法
  '$route': 'fetchData'
 }

按照这样写了,但是页面还是没有渲染

.

.

.

于是就想啊想,想啊想……

以为是路由没有变,我就在页面路由后面加何种参数包括时间戳

但是都没有解决这个问题

……

后来经过多次尝试终于找到问题所在

watch 方法检测路由变化确实生效了,但是页面有些关键数据没有清空还是缓存的上一次的数据,所以导致每次加载页面都不会重新渲染数据,所以找到关键数据,在每次路由发生变化的时候重置关键数据即可

例如:

for(var i =0; i<response.data.length; i++) {
      if(response.data[i].id = this.orderId) {
       this.order = response.data[i]
      }
     }
watch: {
   '$route': function () {
    this.orders = []
    this.fetchData()
    this.orderId = this.$route.params.orderId
   }
  }

这里我的关键数据就是 orderId

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

Javascript 相关文章推荐
jquery图片放大镜功能的实例代码
Mar 26 Javascript
文本域中换行符的替换示例
Mar 04 Javascript
JavaScript模板引擎用法实例
Jul 10 Javascript
JavaScript实现打开链接页面的方式汇总
Jun 02 Javascript
深入探讨Vue.js组件和组件通信
Sep 12 Javascript
js 打开新页面在屏幕中间的实现方法
Nov 02 Javascript
利用Jasmine对Angular进行单元测试的方法详解
Jun 12 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
Jul 13 jQuery
微信小程序 swiper组件构建轮播图的实例
Sep 20 Javascript
vue+socket.io+express+mongodb 实现简易多房间在线群聊示例
Oct 21 Javascript
Vue2.0 axios前后端登陆拦截器(实例讲解)
Oct 27 Javascript
使用Node.js写一个代码生成器的方法步骤
May 10 Javascript
jQuery验证表单格式的使用方法
Jan 10 #Javascript
Html5 js实现手风琴效果
Apr 17 #Javascript
jquery做个日期选择适用于手机端示例
Jan 10 #Javascript
javascript删除html标签函数cIsHTML
Jan 09 #Javascript
jQuery.parseHTML() 函数详解
Jan 09 #Javascript
微信小程序 用户数据解密详细介绍
Jan 09 #Javascript
微信小程序 摇一摇抽奖简单实例实现代码
Jan 09 #Javascript
You might like
PHP 循环列出目录内容的函数代码
2010/05/26 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
2015/11/30 PHP
thinkPHP使用post方式查询时分页失效的解决方法
2015/12/09 PHP
javascript在一段文字中的光标处插入其他文字
2007/08/26 Javascript
javascript Excel操作知识点
2009/04/24 Javascript
关于取不到由location.href提交而来的上级页面地址的解决办法
2009/07/30 Javascript
javascript 动态修改样式和层叠样式表代码
2010/04/27 Javascript
extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
2013/04/02 Javascript
用js实现trim()的解决办法
2013/04/16 Javascript
jquery中change()用法实例分析
2015/02/06 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
jquery实现鼠标滑过小图查看大图的方法
2015/07/20 Javascript
让图片跳跃起来  javascript图片轮播特效
2016/02/16 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
2016/10/05 Javascript
使用JS正则表达式 替换括号,尖括号等
2016/11/29 Javascript
详解Weex基于Vue2.0开发模板搭建
2017/03/20 Javascript
js调用刷新界面的几种方式
2017/05/03 Javascript
三分钟教你用Node做一个微信哄女友(基友)神器(面向小白)
2019/06/21 Javascript
基于vue手写tree插件的那点事儿
2019/08/20 Javascript
Vue如何基于es6导入外部js文件
2020/05/15 Javascript
[36:14]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第二局
2016/02/28 DOTA
在python image 中安装中文字体的实现方法
2019/08/22 Python
numpy ndarray 按条件筛选数组,关联筛选的例子
2019/11/26 Python
python GUI库图形界面开发之PyQt5树形结构控件QTreeWidget详细使用方法与实例
2020/03/02 Python
详解python环境安装selenium和手动下载安装selenium的方法
2020/03/17 Python
keras 模型参数,模型保存,中间结果输出操作
2020/07/06 Python
一文解决django 2.2与mysql兼容性问题
2020/07/15 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
一款利用html5和css3实现的3D立方体旋转效果教程
2016/04/26 HTML / CSS
新锐科技Java程序员面试题
2016/07/25 面试题
护理毕业生自我鉴定
2014/02/11 职场文书
生日宴会祝酒词
2015/08/10 职场文书
小学生红领巾广播稿
2015/08/19 职场文书
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python
Netty客户端接入流程NioSocketChannel创建解析
2022/03/25 Java/Android
java开发双人五子棋游戏
2022/05/06 Java/Android