vue如何實現動態改變地址欄的參數值
動態改變地址欄的參數值
點擊切換Tab,通過watch監聽,在地址欄修改對應得active參數,這樣刷新後還能保持最後瀏覽的tab
watch: { active (newValue) { let query = this.$router.history.current.query; let path = this.$router.history.current.path; //對象的拷貝 let newQuery = JSON.parse(JSON.stringify(query)); // 地址欄的參數值賦值 newQuery.active = newValue; this.$router.push({ path, query: newQuery }); } }
監聽url地址欄參數變化
問題:
在開發過程中我們有可能會遇到一個問題,就是在一個vue項目中引入瞭一個組件,點擊這個組件跳轉的還是當前的頁面,隻是傳遞的參數發生瞭變化,這個時候我們傳遞的參數就不能正常的賦值瞭,這是因為頁面沒有重新加載,所以我們就要監聽地址欄的參數變化瞭。
1.傳遞參數
this.$router.push({ path: url,//路由地址 query:{//參數 type: 1 } });
2.監聽參數變化
watch: { //監聽路由地址的改變 $route:{ immediate:true, handler(){ if(this.$route.query.type){//需要監聽的參數 this.type = this.$route.query.type } } } }
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。