Vue路由this.route.push跳轉(zhuǎn)頁面不刷新的解決方案
Vue路由this.route.push跳轉(zhuǎn)頁面不刷新
一、背景
介紹:在vue項目開發(fā)中,使用路由進(jìn)行頁面跳轉(zhuǎn)時,路由所跳轉(zhuǎn)的頁面不進(jìn)行刷新。
也就是vue生命周期函數(shù)沒有執(zhí)行(created、mounted鉤子函數(shù))。
案例:
A頁面:

B頁面:

問題:
當(dāng)在A頁面第一點擊按鈕到B頁面時,一切正常,當(dāng)返回到A頁面再次點擊按鈕時,B頁面沒有執(zhí)行mounted鉤子函數(shù),結(jié)果導(dǎo)致mounted函數(shù)中查詢方法不執(zhí)行。
二、解決方法:
1、使用activated:{}周期函數(shù)代替mounted:{}函數(shù)即可。
2、監(jiān)聽路由
// 不推薦、用戶體驗不好
watch: {
'$route' (to, from) {
// 路由發(fā)生變化頁面刷新
this.$router.go(0);
}
},
// 該方法會多一次請求
watch: {
'$route' (to, from) {
// 在mounted函數(shù)執(zhí)行的方法,放到該處
this.qBankId = globalVariable.questionBankId;
this.qBankName = globalVariable.questionBankTitle;
this.searchCharpter();
}
},
Vue this.$router.push路由跳轉(zhuǎn),刷新參數(shù)消失
this.$router.push({name:"",params:{id:""}})
name和params搭配刷新參數(shù)會消失
this.$router.push({path:"",query:{id:""}})
path和query搭配,刷新頁面參數(shù)不會消失,query中參數(shù)成了url中的一部分
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
一文詳解Vue如何整合Echarts實現(xiàn)可視化界面
ECharts,縮寫來自Enterprise Charts,商業(yè)級數(shù)據(jù)圖表,一個純Javascript的圖表庫,可以流暢的運行在PC和移動設(shè)備上。本文將在Vue中整合Echarts實現(xiàn)可視化界面,感興趣的可以了解一下2022-04-04
vue使用動態(tài)添加路由(router.addRoutes)加載權(quán)限側(cè)邊欄的方式
這篇文章主要介紹了vue使用動態(tài)添加路由(router.addRoutes)加載權(quán)限側(cè)邊欄的方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06

