vue router连续点击多次路由报错根本原因和解决方法
原因:
vue-router 升级到 3.1.x 后,重复点击导航时,控制台出现报错 ,vue router ≥ v3.1 后 ,回调形式改成 promise api 了,返回的是 promise,如果没有捕获到错误,控制台始终会出现警告。
解决方法:
1在 router 文件夹下 重写push和replace方法:
// 先把VueRouter原型对象的push replace 方法保存一份
let originPush=VueRouter.prototype.push;
let originReplace=VueRouter.prototype.replace;
// 重写push方法 第一个参数
VueRouter.prototype.push=function(location,resolve,reject){// console.log(this);//实例// 判断如果成功或失败回调已经传了if(resolve&&reject){// call 调用函数一次 改变this指向originPush.call(this,location,resolve,reject)}else{originPush.call(this,location,()=>{},()=>{})}
}VueRouter.prototype.replace=function(location,resolve,reject){if(resolve&&reject){originReplace.call(this,location,resolve,reject)}else{originReplace.call(this,location,()=>{},()=>{})}
2补齐router.push()的第三个参数
this.$router.push(route, () => {}, (e) => {console.log('输出报错',e)}
vue router连续点击多次路由报错根本原因和解决方法相关推荐
- vue router连续点击多次路由报错
在编程式导航跳转时候,连续点击多次会报NavigationDuplicated错误 this.$router.push({name: "search"}); 出现这种错误原因是因为 ...
- eslint 验证vue文件 报错 unexpected token =解决方法
eslint 验证vue文件 报错 unexpected token =解决方法 参考文章: (1)eslint 验证vue文件 报错 unexpected token =解决方法 (2)https: ...
- mysql 启动服务1067_windows无法启动MySQL服务报错1067的解决方法
突然登陆MySQL时,出现禁止访问或者无法连接到数据库,回到服务,去打开wampmysqld ,发现 "windows无法启动MySQL服务 错误1067" ,死活启动不了,咋办? ...
- python安装失败0x80070570_e460安装win10系统报错0x80070570的解决方法
win10系统现已逐渐成为了主流操作系统,很多用户都将自己的电脑升级为win10系统.但近日却有用户跟小编反映说自己的e460电脑在安装win10系统时出现了提示错误0x80070570情况,那我们要 ...
- Python发送邮件smtplib.SMTP各报错问题的解决方法
Python发送邮件smtplib.SMTP各报错问题的解决方法 参考文章: (1)Python发送邮件smtplib.SMTP各报错问题的解决方法 (2)https://www.cnblogs.co ...
- Eslint报错整理与解决方法(持续整理)
Eslint报错整理与解决方法(持续整理) 参考文章: (1)Eslint报错整理与解决方法(持续整理) (2)https://www.cnblogs.com/lunlunshiwo/p/859600 ...
- 登录mysql报错2059_navicat连接mysql报错2059的解决方法
navicat连接mysql报错2059的解决方法 发布时间:2020-12-21 10:27:37 来源:亿速云 阅读:82 作者:小新 栏目:数据库 这篇文章给大家分享的是有关navicat连接m ...
- php zpo框架,Yii使用DeleteAll连表删除出现报错问题的解决方法
本文实例讲述了Yii使用DeleteAll连表删除出现报错问题的解决方法.分享给大家供大家参考,具体如下: 删除数据的时候,经常会遇到连联判断删除数据的条件,今天用Yii 的CDbCriteria生成 ...
- cobbler安装4个报错汇总及解决方法:ImportError
cobbler安装4个报错汇总及解决方法:ImportError 参考文章: (1)cobbler安装4个报错汇总及解决方法:ImportError (2)https://www.cnblogs.co ...
最新文章
- 建立自己的voc数据集_一次将自己的数据集制作成PASCAL VOC格式的惨痛经历
- 【SQL学习笔记】一、select语句
- 北漂周记--第8记--项目测试
- TreeMap实现权重随机数Java
- Flagger on ASM——基于Mixerless Telemetry实现渐进式灰度发布系列 1 遥测数据
- [BUUCTF-pwn]——wustctf2020_name_your_dog
- JAVA软件图片浏览下载_java模拟浏览器下载图片
- 问题:npm WARN ajv-keywords@3.2.0 requires a peer of ajv@^6.0.0 but none is installed.
- 使用emacs去除源代码中多余的空格
- Java 单例模式详解(转)
- Linux 下 4 种禁用 Root 登陆的方法,你掌握了哪几种呢?
- 视频码率,帧率和分辨率的联系与差别
- 软件工程导论复习之总体设计
- java 按拼音模糊搜索汉字_java 自动补全 java 搜索自动匹配 java 汉字拼音搜索
- 简单分析实现运维利器---webssh终端
- 博饼游戏奖项积分设置
- 第二讲:高性能计算关键技术和趋势分析
- 龙门飞甲的一点小小感想
- 分数排名 mysql_mysql 分数排名
- Linux7安装oracle11g报错 Error in invoking target ‘agent nmhs‘ of makefile “ins_emagent.mk”