1. 程式人生 > 程式設計 >Vue路由this.route.push跳轉頁面不重新整理的解決方案

Vue路由this.route.push跳轉頁面不重新整理的解決方案

路由this.route.push跳轉頁面不重新整理

一、背景

介紹:在vue專案開發中,使用路由進行頁面跳轉時,路由所跳轉的頁面不進行重新整理。

也就是vue生命週期函式沒有執行(created、mounted鉤子函式)。

案例:

A頁面:

Vue路由this.route.push跳轉頁面不重新整理的解決方案

B頁面:

Vue路由this.route.push跳轉頁面不重新整理的解決方案

問題:

當在A頁面第一點選按鈕到B頁面時,一切正常,當返回到A頁面再次點選按鈕時,B頁面沒有執行mounted鉤子函式,結果導致mounted函式中查詢方法不執行。

二、解決方法:

1、使用activated:{}周期函式代替mounted:{zISmjPN}函式即可。

2、監聽路由

// 不推薦、使用者體驗不好
watch: {
	'$route' (to,from) {
    // 路由發生變化頁面重新整理
	this.$router.go(0);
		}
},
// 該方法會多一次請求
watch: {
	'$route' (to,from) {
    // 在mounted函式執行的方法,放到該處
	this.qBankId = globalVariable.quwww.cppcns.comestionBankId;
	this.qBankName = gzISmjPNlobalVariable.questionBankTitle;
	this.searchCharpter();
	}
},

Vue this.$router.push路由跳轉,重新整理引數消失

this.$router.push({name:zISmjPN"",params:{id:""}})

name和params搭配重新整理引數會消失

this.$router.push({path:"",query:{id:""}})

path和query搭配,重新整理頁面引數不會消失,query中引數成了url中的一部分

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援我們。