開發過程中只使用過vue-router的導航守衛做許可權,路由元資訊做導航啟用,其他知識點沒有接觸過,寫個筆記加深理解。
1、導航守衛
可以用router.beforeeach
註冊乙個全域性前置守衛,可以根據需求,根據許可權攔截頁面跳轉,或跳轉會指定頁面,比如登入頁面。
router.beforeeach((to, from, next) => )
2、路由元資訊
在定義路由時可以根據需求,配置meta欄位,可用於tab name顯示、是否keep-alive、導航選單動態啟用等。
routes: [}]
}]})
3、過渡動效
路由跳轉中新增過渡效果,動畫效果的定義,參考
4、導航完成前獲取資料
平時開發時,需要從服務端獲取資料,主要在在導航完成後,在接下來的元件生命週期鉤子中獲取資料(例如 created mounted),也就是進入頁面後,正在載入中。
vue-router提供了,在導航完成前獲取資料,即導航完成前,在路由進入守衛中獲取資料,在資料獲取成功後執行導航。
export default
},beforerouteenter (to, from, next) )}},
methods: else
}}}
5、滾動行為
使用前端路由,切換到新路由時,頁面滾動停留在路由切換前頁面停留的位置,這個功能可以設定頁面滾動到頂部,或者儲存原先的滾動的位置。
注:該功能只支援history.pushstate的瀏覽器中可用。
const router = new vuerouter(
})
6、路由懶載入
路由懶載入,即將不同路由對應的元件分割成不同**塊,然後當路由被訪問後才載入對應元件,提高頁面載入效率。
const foo = () => import('./foo.vue')
const router = new vuerouter(
]})
Vue Router 高階 路由守衛
1.全域性前置守衛 router.beforeach to,from next 用法跟全域性一樣,只是,將其寫進其中乙個路由物件中,只在這個路由下起作用。beforeenter 守衛只在進入路由的是時候才會觸發,不會在params,query 或 hash改變時觸發 3.全域性解析守衛 router...
Vuerouter學習筆記
vue路由的作用 將元件 components 對映到路由 routes 然後告訴 vue router 在 渲染它們 前端路由是 對映關係 是路徑和元件的對映關係 vuerouter 路由器物件 然後 該物件有routes屬性 其為路由們配置,為陣列,陣列中每個值為乙個路由,路由就是相應的對映 步...
Vue Router高階之滾動行為詳解
滾動行為 使用前端路由,當切換到新ktortnab路由時,想要頁面滾到頂部,或者是保持原先的滾動位置,就像重新載入頁面那樣。vue router 能做到,而且更好,它讓你可以自定義路由切換時頁面如何滾動。注意 這個功能只在 html5 histo 模式下可用。當建立乙個 router 例項,你可以提...