基于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 相关文章推荐
javascript import css实例代码
Jul 18 Javascript
JavaScript 继承详解 第一篇
Aug 30 Javascript
你必须知道的Javascript知识点之"深入理解作用域链"的介绍
Apr 23 Javascript
jQuery :first选择器使用介绍
Aug 09 Javascript
checkbox使用示例
Aug 23 Javascript
JS延迟加载加快页面打开速度示例代码
Dec 30 Javascript
浅析Javascript中“==”与“===”的区别
Dec 23 Javascript
Javascript基础学习笔记(菜鸟必看篇)
Jul 22 Javascript
angular-ui-sortable实现可拖拽排序列表
Dec 28 Javascript
JavaScript实现两个select下拉框选项左移右移
Mar 09 Javascript
Vue2几种常见开局方式详解
Sep 09 Javascript
如何在postman中添加cookie信息步骤解析
Jun 30 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
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
Zend Framework实现多服务器共享SESSION数据的方法
2016/03/22 PHP
PHP中关键字interface和implements详解
2017/06/14 PHP
PHP中cookie知识点学习
2018/05/06 PHP
thinkPHP实现基于ajax的评论回复功能
2018/06/22 PHP
PHP学习记录之常用的魔术常量详解
2019/12/12 PHP
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
jQuery maxlength文本字数限制插件
2010/04/16 Javascript
简单的前端js+ajax 购物车框架(入门篇)
2011/10/29 Javascript
javascript中Number对象的toString()方法分析
2014/12/20 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
浅析在javascript中创建对象的各种模式
2016/05/06 Javascript
微信小程序 五星评分(包括半颗星评分)实例代码
2016/12/14 Javascript
Vue表单类的父子组件数据传递示例
2018/05/03 Javascript
一分钟学会JavaScript中的try-catch
2020/12/14 Javascript
[01:33]一分钟玩转DOTA2第三弹:DOTA2&DotA快捷操作大对比
2014/06/04 DOTA
[15:57]教你分分钟做大人:斧王
2014/10/30 DOTA
[03:24]CDEC.Y赛前采访 努力备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
[05:09]第二届DOTA2亚洲邀请赛决赛日比赛集锦:iG 3:0 OG夺冠
2017/04/05 DOTA
[01:03:41]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第一场 12.17
2020/12/19 DOTA
使用Python脚本生成随机IP的简单方法
2015/07/30 Python
python通过Windows下远程控制Linux系统
2018/06/20 Python
对Tensorflow中tensorboard日志的生成与显示详解
2020/02/04 Python
pycharm 2020 1.1的安装流程
2020/09/29 Python
用python查找统一局域网下ip对应的mac地址
2021/01/13 Python
Foot Locker意大利官网:全球领先的运动鞋和服装零售商
2017/05/30 全球购物
Clarks西班牙官方在线商店:clarks鞋
2019/05/03 全球购物
屈臣氏乌克兰:Watsons UA
2019/10/29 全球购物
美容院考勤制度
2014/01/30 职场文书
2014年感恩节活动策划方案
2014/10/06 职场文书
有关骆驼祥子的读书笔记
2015/06/26 职场文书
当你焦虑迷茫时,请读读这6句话
2019/07/24 职场文书
七年级作文之我的梦想
2019/10/16 职场文书
MySQL索引篇之千万级数据实战测试
2021/04/05 MySQL
Python基础 括号()[]{}的详解
2021/11/07 Python