export default {data(){return {num: 18}},beforeRouteEnter(to, from, next){next(vm=>{vm.num=19;})}
}
- vm?表示this ,可以調用?num了
?
三個鉤子函數:?beforeRouteEnter, beforeRouteUpdata, beforeRouteLeave
const Foo = {template: `...`,beforeRouteEnter (to, from, next) {// 在渲染該組件的對應路由被 confirm 前調用// 不!能!獲取組件實例 `this`// 因為當鉤子執行前,組件實例還沒被創建
next() // 必須有這個,相當于一個按鈕開啟一樣。
},beforeRouteUpdate (to, from, next) {// 在當前路由改變,但是該組件被復用時調用// 舉例來說,對于一個帶有動態參數的路徑 /foo/:id,在 /foo/1 和 /foo/2 之間跳轉的時候,// 由于會渲染同樣的 Foo 組件,因此組件實例會被復用。而這個鉤子就會在這個情況下被調用。// 可以訪問組件實例 `this`
next() // 必須有這個,相當于一個按鈕開啟一樣
},beforeRouteLeave (to, from, next) {// 導航離開該組件的對應路由時調用// 可以訪問組件實例 `this`
next() // 必須有這個,相當于一個按鈕開啟一樣
}
}
?