解决vue-router 切换tab标签关闭时缓存问题


Posted in Javascript onJuly 22, 2020

在router入口页面加上 keepAlive: true // 需要被缓存 false则不需要

{
  path: 'fundProListG',
  component: resolve => require(['@/pages/product/fundPros/fundTab/fundTab.vue'], resolve),
  title: '基金首页',
  redirect: 'fundProListG/fundProListG',
  meta: {
  keepAlive: false // 不需要被缓存
  },
  children: [{
  path: 'fundProListG',
  component: resolve => require(['@/pages/product/fundPros/fundProListG.vue'], resolve),
  meta: {
  keepAlive: true // 需要被缓存
  }
  },{
  path: 'fungAdm',
  component: resolve => require(['@/pages/product/fundPros/fungAdm.vue'], resolve),
  meta: {
  keepAlive: true // 需要被缓存
  }
  }]
 },

App.vue (你在哪写的那个<router-view ></router-view>标签就在哪改动)

<keep-alive>
 <router-view v-if="$route.meta.keepAlive"></router-view>
 </keep-alive>
 <router-view v-if="!$route.meta.keepAlive"></router-view>

当点关闭标签的时候如果不想当前页面缓存 加上

解决vue-router 切换tab标签关闭时缓存问题

接着遇到了第一次缓存第二次改为false后打开不缓存了 在关闭标签页面 加上这个

解决vue-router 切换tab标签关闭时缓存问题

补充知识:解决通过vue-router打开tab页,下次进入还是上次history缓存的界面状态的问题

一、问题描述:

1. 跳转模式:界面A-->界面B(界面A中通过 this.$router.push({name:'组件B名称', params: {参数}}) 通过打开新tab页的方式打开界面B。)

2.关闭界面B,回到界面A

3.再次从A到B时,打开的界面B仍然是上次的状态,哪怕传递的参数不一样。

另:router声明如下

{
 path: 'demo/pageB',
 name: 'pageB',
 component: _import('demo/pageB'),
 meta: {
  requiresAuth: true,
  keepAlive: false, // 不需要被缓存
  title: '界面B'
 }
}

二、原因: 详见vue-router官网

解决vue-router 切换tab标签关闭时缓存问题

三、解决方式:在界面B离开时,销毁组件。代码如下:

// 导航离开该组件的对应路由时调用[可以访问组件实例 `this`]
beforeRouteLeave (to, from, next) {
 // 销毁组件,避免通过vue-router再次进入时,仍是上次的history缓存的状态
 this.$destroy(true)
 next()
}

更多beforeRouteLeave 详见官网

四、其它解决方式(未成功):

vue-router官网提供了 router.replace(location, onComplete?, onAbort?) 的方式,使得不向 history中新增记录,但是我未尝试成功,具体原因暂不知。

官网描述:

解决vue-router 切换tab标签关闭时缓存问题

我的写法:

this.$router.replace({name:'组件B名称', params: {参数}}, () => { this.warning('test!') }, () => { this.warning('test!') })

以上这篇解决vue-router 切换tab标签关闭时缓存问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery &amp; json的省市区联动代码
Jun 26 Javascript
jquery图片放大功能简单实现
Aug 01 Javascript
js正则匹配出所有图片及图片地址src的方法
Jun 08 Javascript
轮播的简单实现方法
Jul 28 Javascript
AngularJS Ajax详解及示例代码
Aug 17 Javascript
AngularJS表单提交实例详解
Feb 18 Javascript
微信小程序开发animation心跳动画效果
Aug 16 Javascript
js 中rewrap-ajax.js插件实例代码
Oct 20 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
Mar 19 Javascript
JavaScript生成一个不重复的ID的方法示例
Sep 16 Javascript
JS定时器如何实现提交成功提示功能
Jun 12 Javascript
何时使用Map来代替普通的JS对象
Apr 29 Javascript
基于 Vue 的 Electron 项目搭建过程图文详解
Jul 22 #Javascript
浅谈JS for循环中使用break和continue的区别
Jul 21 #Javascript
解决vue 给window添加和移除resize事件遇到的坑
Jul 21 #Javascript
js实现带积分弹球小游戏
Jul 21 #Javascript
在vue中created、mounted等方法使用小结
Jul 21 #Javascript
解决vue的touchStart事件及click事件冲突问题
Jul 21 #Javascript
解决Vue 移动端点击出现300毫秒延迟的问题
Jul 21 #Javascript
You might like
新浪新闻小偷
2006/10/09 PHP
mysql时区问题
2008/03/26 PHP
解析PHP跳出循环的方法以及continue、break、exit的区别介绍
2013/07/01 PHP
php简单分页类实现方法
2015/02/26 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
PHP切割整数工具类似微信红包金额分配的思路详解
2019/09/18 PHP
Javascript 遍历对象中的子对象
2009/07/03 Javascript
兼容IE/Firefox/Opera/Safari的检测页面装载完毕的脚本Ext.onReady的实现
2009/07/14 Javascript
前台js对象在后台转化java对象的问题探讨
2013/12/20 Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
2015/10/09 Javascript
jquery 中toggle的2种用法详解(推荐)
2016/09/02 Javascript
JS表单提交验证、input(type=number) 去三角 刷新验证码
2017/06/21 Javascript
Python Matplotlib库入门指南
2015/05/18 Python
python非递归全排列实现方法
2017/04/10 Python
python matplotlib画图实例代码分享
2017/12/27 Python
mac系统安装Python3初体验
2018/01/02 Python
python统计字母、空格、数字等字符个数的实例
2018/06/29 Python
用Python从0开始实现一个中文拼音输入法的思路详解
2019/07/20 Python
简单了解python中的与或非运算
2019/09/18 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
2020/04/01 Python
解决IDEA 的 plugins 搜不到任何的插件问题
2020/05/04 Python
Win10下用Anaconda安装TensorFlow(图文教程)
2020/06/18 Python
浅谈h5自定义audio(问题及解决)
2016/08/19 HTML / CSS
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
宝信软件JAVA工程师面试经历
2012/08/19 面试题
党政领导班子民主生活会整改措施
2014/09/18 职场文书
南极大冒险观后感
2015/06/05 职场文书
九年级语文教学反思
2016/03/03 职场文书
2016年学校“3.12”植树节活动总结
2016/03/16 职场文书
工作简历的自我评价
2019/05/16 职场文书
Feign调用传输文件异常的解决
2021/06/24 Java/Android
Redis性能监控的实现
2021/07/09 Redis
船舶调度指挥系统——助力智慧海事
2022/02/18 无线电
Python可视化学习之seaborn绘制矩阵图详解
2022/02/24 Python
详解ZABBIX监控ESXI主机的问题
2022/06/21 Servers
Python编写车票订购系统 Python实现快递收费系统
2022/08/14 Python