原因:"vue-router" 最新的vue-router引入promise
声明式导航不会出现这个问题,因为vue-router底层处理好了
解决办法
①可以通过pish方法传递相应的成功、失败的回调函数,捕捉当前的错误,可以解决
②通过底部的代码,可以实现解决错误
this.$router.push({name:"search",params:{keyword:this.keyword},query:{k:this.keyword.toUpperCase()}},()=>{},()=>{})
这种写法,治标不治本,在别的组件中push|replace,编程式导航还是有类似的错误
③在路由router的.js文件中重写push和replace,可以彻底解决这个问题
this:当前组件实例(search)
this.$router属性:当前的这个属性,属性值VueRouter类的一个实例,当在入口文件注册路由时,给组件实例添加$router|$route属性
push:VueRouter类的一个实例