基于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 类的使用详解
May 07 Javascript
js简单的点击返回顶部效果实现方法
Apr 10 Javascript
JavaScript合并两个数组并去除重复项的方法
Jun 13 Javascript
JS实现超精简响应鼠标显示二级菜单代码
Sep 12 Javascript
关于AngularJS中ng-repeat不更新视图的解决方法
Sep 30 Javascript
AngularJS $http post 传递参数数据的方法
Oct 09 Javascript
微信小程序使用wx.request请求服务器json数据并渲染到页面操作示例
Mar 30 Javascript
微信小程序JS加载esmap地图的实例详解
Sep 04 Javascript
JS实现音乐导航特效
Jan 06 Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
Apr 20 Javascript
解决vue打包报错Unexpected token: punc的问题
Oct 24 Javascript
Ajax实现异步加载数据
Nov 17 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数据库开发知多少
2006/10/09 PHP
PHP 编程安全性小结
2010/01/08 PHP
PHP中文件上传的一个问题
2010/09/04 PHP
关于PHP递归算法和应用方法介绍
2013/04/15 PHP
跟我学Laravel之路由
2014/10/15 PHP
php自动更新版权信息显示的方法
2015/06/19 PHP
如何用javascript判断录入的日期是否合法
2007/01/08 Javascript
来自国外的页面JavaScript文件优化
2010/12/08 Javascript
jquery监控数据是否变化(修正版)
2011/04/12 Javascript
9行javascript代码获取QQ群成员具体实现
2013/10/16 Javascript
JavaScript中的类数组对象介绍
2014/12/30 Javascript
jQuery中removeAttr()方法用法实例
2015/01/05 Javascript
举例说明如何为JavaScript的方法参数设置默认值
2015/11/17 Javascript
Bootstrap每天必学之导航条
2015/11/27 Javascript
jquery-mobile基础属性与用法详解
2016/11/23 Javascript
详解如何构建一个Angular6的第三方npm包
2018/09/07 Javascript
微信小程序开发注意指南和优化实践(小结)
2019/06/21 Javascript
解决layui数据表格table的横向滚动条显示问题
2019/09/04 Javascript
用Python制作在地图上模拟瘟疫扩散的Gif图
2015/03/31 Python
pandas string转dataframe的方法
2018/04/11 Python
使用Python快速制作可视化报表的方法
2019/02/03 Python
一行python实现树形结构的方法
2019/08/09 Python
Python队列、进程间通信、线程案例
2019/10/25 Python
python利用proxybroker构建爬虫免费IP代理池的实现
2021/02/21 Python
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
周仰杰(JIMMY CHOO)英国官方网站:闻名世界的鞋子品牌
2018/10/28 全球购物
英国家具、照明、家居用品网上商店:Wayfair.co.uk
2020/02/13 全球购物
意大利时尚奢侈品店:D’Aniello Boutique
2021/01/19 全球购物
口头翻译求职人自荐信
2013/12/07 职场文书
创建卫生先进单位实施方案
2014/03/10 职场文书
物业管理专业自荐信
2014/07/01 职场文书
四风问题查摆剖析材料
2014/10/11 职场文书
西游降魔篇观后感
2015/06/15 职场文书
ROS系统将python包编译为可执行文件的简单步骤
2021/07/25 Python
CSS巧用渐变实现高级感背景光动画
2021/12/06 HTML / CSS
Netty客户端接入流程NioSocketChannel创建解析
2022/03/25 Java/Android