vue router高階筆記

2021-09-17 20:47:32 字數 1112 閱讀 5580

開發過程中只使用過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 例項,你可以提...