Vue.js是一個前端開發(fā)框架,它提供了一系列的工具和API幫助開發(fā)者構建高效、可維護的單頁面應用(SPA)。其中一個核心組件就是$router,它是Vue.js框架內置的路由管理器,用于處理應用程序的導航。
// 創(chuàng)建一個Vue Router實例 import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) const router = new VueRouter({ routes: [ { path: '/', name: 'home', component: Home }, { path: '/about', name: 'about', component: () =>import('../views/About.vue') } ] }) export default router
$router實例是一個Vue插件,可以通過Vue.use(VueRouter)方法使用它。創(chuàng)建一個$router實例需要傳入routes參數,它是一個路由對象數組。路由對象包含了三個屬性:path、name和component。其中path定義了路由路徑,name定義了路由名稱,component指定了路由組件。
在Vue組件中,可以通過訪問this.$router來訪問$router實例,它提供了很多方法幫助我們進行導航控制。例如,可以使用this.$router.push方法來導航到一個新的路徑:
// 在Vue組件中使用$router導航 export default { methods: { navigateToHome() { this.$router.push('/') }, navigateToAbout() { this.$router.push('/about') } } }
通過上述代碼,我們定義了兩個方法來導航到不同的路徑。使用$router.push方法時,路由器會自動調用相應的組件顯示在頁面上,并且改變URL地址。
除了$router.push方法,$router實例還提供了其他幾個方法來進行導航控制,例如$router.replace用于在當前頁替換掉路由歷史記錄;$router.go用于前進或后退到路由歷史記錄中的某個位置;$router.beforeEach用于導航守衛(wèi),可以在導航切換前進行驗證、重定向等操作。