日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Vue 监听路由变化的三种方式

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vue 监听路由变化的三种方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

方法一:通過 watch

// 監聽,當路由發生變化的時候執行
watch:{$route(to,from){console.log(to.path);}
},

或?

// 監聽,當路由發生變化的時候執行
watch: {$route: {handler: function(val, oldVal){console.log(val);},// 深度觀察監聽deep: true}
},

// 監聽,當路由發生變化的時候執行
watch: {'$route':'getPath'
},
methods: {getPath(){console.log(this.$route.path);}
}

方法二::key是用來阻止“復用”的。Vue 為你提供了一種方式來聲明“這兩個元素是完全獨立的——不要復用它們”。只需添加一個具有唯一值的?key?屬性即可(Vue文檔原話)

<router-view :key="key"></router-view>computed: {key() {return this.$route.name !== undefined? this.$route.name +new Date(): this.$route +new Date()}
}

?使用computed屬性和Date()可以保證每一次的key都是不同的,這樣就可以如愿刷新數據了。

方法三:通過 vue-router 的鉤子函數?beforeRouteEnter??beforeRouteUpdate??beforeRouteLeave

<script>// 引入 Tabbar組件import mTabbar from './components/Tabbar'import mTabbarItem from './components/TabbarItem'// 引入 vuex 的兩個方法import {mapGetters, mapActions} from 'vuex'export default {name: 'app',// 計算屬性computed:mapGetters([// 從 getters 中獲取值'tabbarShow']),// 監聽,當路由發生變化的時候執行watch:{$route(to,from){if(to.path == '/' || to.path == '/Prisoner' || to.path == '/Goods' || to.path == '/Time' || to.path == '/Mine'){/*** $store來自Store對象* dispatch 向 actions 發起請求*/this.$store.dispatch('showTabBar');}else{this.$store.dispatch('hideTabBar');}}},beforeRouteEnter (to, from, next) {// 在渲染該組件的對應路由被 confirm 前調用// 不!能!獲取組件實例 `this`// 因為當鉤子執行前,組件實例還沒被創建},beforeRouteUpdate (to, from, next) {// 在當前路由改變,但是該組件被復用時調用// 舉例來說,對于一個帶有動態參數的路徑 /foo/:id,在 /foo/1 和 /foo/2 之間跳轉的時候,// 由于會渲染同樣的 Foo 組件,因此組件實例會被復用。而這個鉤子就會在這個情況下被調用。// 可以訪問組件實例 `this`},beforeRouteLeave (to, from, next) {// 導航離開該組件的對應路由時調用// 可以訪問組件實例 `this`},components:{mTabbar,mTabbarItem},data() {return {select:"Building"}}}
</script>

?

總結

以上是生活随笔為你收集整理的Vue 监听路由变化的三种方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。