vue跳轉同一個路由參數不同的問題
vue跳轉同一個路由參數不同
問題
vue項目同一個路由跳轉(路由不變,後面參數變化),第一次碰到這個問題的時候,搜瞭很多文章,大約是第一種解決方案,很順利解決瞭。
可是!!!在app上的時候,它地址變瞭刷新不瞭!!
第一種方法
window.location.href = 改變參數後的新地址 window.location.reload();
在app上地址更新但是不刷新!!!然後就有瞭第二種方法
第二種方法
<router-view :key="$route.fullPath"/>
這樣可以在app上解決!!!!沒有發現承載環境兼容性問題
vue跳轉同一路由報錯
vue中,如果跳轉同一個頁面路由,雖不會影響功能,但是會報錯
原因
路由的push會向歷史記錄棧中添加一個記錄,同時跳轉同一個路由頁面,會造成一個重復的添加,導致頁面的報錯
解決方案
在router的index.js中重寫vue的路由跳轉push
const originalPush = Router.prototype.push Router.prototype.push = function push(location) { return originalPush.call(this, location).catch(err => err); }
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- vue跳轉同一路由報錯的問題及解決
- vue實現頁面緩存功能
- vue封裝TabBar組件的完整步驟記錄
- Vue router/Element重復點擊導航路由報錯問題及解決
- 深入瞭解vue-router原理並實現一個小demo