基于vue中keep-alive缓存问题的解决方法


Posted in Javascript onSeptember 21, 2018

vue开发的时候,我们经常会有这样的需求:开发一个详细页面来展示商品的详细信息,根据列表页传入的id进行请求,拿到对应的数据进行渲染。

但是一般在路由上都会加上keep-alive保持数据的状态,除非强制无缓存刷新,这就导致第一次进入详情页面时,可以在created中拿到id,但是返回后,再点击进入,就不会再走相应的生命周期了,无法拿到新的id

这时候可以使用vue的$destroy()方法

这是vue的一个生命周期,完全销毁一个实例。清理它与其它实例的连接,解绑它的全部指令及事件监听器。

不用$destroy方法的时候可以用watch监听路有变化来实现效果

created() {
  this.goodsId = this.$route.query.goodsId;
  this.getGoodsInfo();
 },
 watch: {
  '$route'(to, from) {
  if(to.name === 'GoodsDetail') {
   this.goodsId = to.query.goodsId;
   this.getGoodsInfo();
  }
  }
 }

用$destroy方法

created() {
  if(this.goodsId !== this.$route.query.goodsId) {
  this.$destroy();
  }
  this.goodsId = this.$route.query.goodsId;
  this.getGoodsInfo();
 }

以上这篇基于vue中keep-alive缓存问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
fireworks菜单生成器mm_menu.js在 IE 7.0 显示问题的解决方法
Oct 20 Javascript
仅img元素创建后不添加到文档中会执行onload事件的解决方法
Jul 31 Javascript
jquery入门—选择器实现隔行变色实例代码
Jan 04 Javascript
页面载入结束自动调用js函数示例
Sep 23 Javascript
extjs 如何给column 加上提示
Jul 29 Javascript
使用js实现的简单拖拽效果
Mar 18 Javascript
js实现移动端导航点击自动滑动效果
Jul 18 Javascript
Angular实现的自定义模糊查询、排序及三角箭头标注功能示例
Dec 28 Javascript
浅谈vue方法内的方法使用this的问题
Sep 15 Javascript
Vue-input框checkbox强制刷新问题
Apr 18 Javascript
javascript-hashchange事件和历史状态管理实例分析
Apr 18 Javascript
JavaScript中变量提升和函数提升的详解
Aug 07 Javascript
vue中前进刷新、后退缓存用户浏览数据和浏览位置的实例讲解
Sep 21 #Javascript
vue单页面应用打开新窗口显示跳转页面的实例
Sep 21 #Javascript
详解Vue改变数组中对象的属性不重新渲染View的解决方案
Sep 21 #Javascript
默认浏览器设置及vue自动打开页面的方法
Sep 21 #Javascript
详解Vue中数组和对象更改后视图不刷新的问题
Sep 21 #Javascript
详解vue 数组和对象渲染问题
Sep 21 #Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
Sep 21 #Javascript
You might like
纯PHP代码实现支付宝批量付款
2015/12/24 PHP
PHP缩略图生成和图片水印制作
2017/01/07 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
仿163填写邮件地址自动显示下拉(无优化)
2008/11/05 Javascript
关于IE7 IE8弹出窗口顶上
2008/12/22 Javascript
jQuery 事件队列调整方法
2009/09/18 Javascript
Javascript动态创建div的方法
2015/02/09 Javascript
JavaScript“尽快失败”的原则实例详解
2016/10/08 Javascript
微信小程序 wxapp导航 navigator详解
2016/10/31 Javascript
bootstrap jquery dataTable 异步ajax刷新表格数据的实现方法
2017/02/10 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
vue 标签属性数据绑定和拼接的实现方法
2018/05/17 Javascript
angular4强制刷新视图的方法
2018/10/09 Javascript
基于vue-cli、elementUI的Vue超简单入门小例子(推荐)
2019/04/17 Javascript
原生JavaScript实现日历功能代码实例(无引用Jq)
2019/09/23 Javascript
在Vue中使用antv的示例代码
2020/06/29 Javascript
详解Django中的form库的使用
2015/07/18 Python
Python中int()函数的用法浅析
2017/10/17 Python
Python实现随机漫步功能
2018/07/09 Python
python使用ddt过程中遇到的问题及解决方案【推荐】
2018/10/29 Python
pandas 如何分割字符的实现方法
2019/07/29 Python
Python创建数字列表的示例
2019/11/28 Python
python列表推导式入门学习解析
2019/12/02 Python
如何学习Python time模块
2020/06/03 Python
美国咖啡批发网站:Coffee.org
2017/06/29 全球购物
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
Christys’ Hats官网:英国帽子制造商
2018/11/28 全球购物
意大利在线高尔夫商店:Online Golf
2021/03/09 全球购物
中学教师实习自我鉴定
2013/09/28 职场文书
会计实习生工作总结的自我评价
2013/10/07 职场文书
实习期自我鉴定
2013/10/11 职场文书
元旦文艺汇演主持词
2014/03/26 职场文书
大学生作弊检讨书
2014/09/11 职场文书
员工保密协议书
2014/09/27 职场文书
六一领导慰问欢迎词
2015/01/26 职场文书
重温经典:乔布斯在斯坦福大学的毕业演讲(双语)
2019/08/26 职场文书