解决Vue路由重复跳转报错
生活随笔
收集整理的這篇文章主要介紹了
解决Vue路由重复跳转报错
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給一個元素綁定跳轉路由的事件時,跳轉后當我們重復點擊時就會報以下錯誤:
?原因:vueRouter版本問題,
解決方案1:
使用舊版本的VueRouter? ?3.0.xxx
?解決方案2:
跳轉路徑后,捕獲異常,不做處理(這類綁定事件若較多,要寫好多次catch)
$router.push('/home/search').catch(err=>{ })
?解決方案3(推薦):
在VueRouter上配置路由跳轉,在router中的index.js中加上以下代碼,注意加在use之前
const routerPush = VueRouter.prototype.push;
VueRouter.prototype.push = function (location) {
? ? return routerPush.call(this, location).catch(err => {})
};
?完整示例:
import Vue from 'vue' import VueRouter from 'vue-router' import infoView from '../view/infoView.vue' import HomeView from '../components/HomeView.vue' import theSearch from '../view/theSearch.vue'const routerPush = VueRouter.prototype.push; VueRouter.prototype.push = function (location) {return routerPush.call(this, location).catch(err => {}) }; Vue.use(VueRouter) const routes = [{path: '/',redirect: '/home' }, {path: '/home',component: HomeView,children: [{path: '/home/info',component: infoView}, {path: '/home/search',component: theSearch}, ] }, ]const router = new VueRouter({routes })export default router總結
以上是生活随笔為你收集整理的解决Vue路由重复跳转报错的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL事务的操作
- 下一篇: html5倒计时秒杀怎么做,vue 设