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。

推薦閱讀: