vue2.0 動態路由傳參方法
阿新 • • 發佈:2019-02-06
因為是用element-ui渲染出來的tree選單,
每個節點完成路由只能使用程式設計式導航(在函式裡觸發路由)
並傳參需要元件需要獲取的資料
使用this.$router.push()
this.$router.push({name: '你路由的名字', query: {id: '可以是變數'}})
獲取的方法為
this.$route.query.id
文件中提到
提醒一下,當使用路由引數時,例如從 /user/foo 導航到 user/bar,原來的元件例項會被複用。因為兩個路由都渲染同個元件,比起銷燬再建立,複用則顯得更加高效。不過,這也意味著元件的生命週期鉤子不會再被呼叫。 複用元件時,想對路由引數的變化作出響應的話,你可以簡單地 watch(監測變化) $route 物件:
watch: { '$route' (to, from) { // 對路由變化作出響應... } }
也就是說當你把引數繫結到節點裡後
<p>{{params}}</p>
data () {
return {
params: this.$route.query.id
}
}
當引數發生變化時,你需要
watch: {
'$route' (to, from) {
this.params = this.$route.query.id
}
}
不然p標籤裡的值不會發生改變