為了更好地組織和管理我們的Vue Web應(yīng)用程序,我們可以將多個路由文件拆分為多個模塊。這樣,我們可以將所有與用戶密切相關(guān)的路由分組為一個文件,將所有與管理相關(guān)的路由分組為另一個文件,以此類推。
// example-app.js import Vue from 'vue' import VueRouter from 'vue-router' import userRoutes from './user-routes' import adminRoutes from './admin-routes' Vue.use(VueRouter) const routes = [ ...userRoutes, ...adminRoutes ] const router = new VueRouter({ routes })
如上所示,我們可以將所有用戶相關(guān)的路由放在一個名為“user-routes.js”的文件中,并將其導(dǎo)出作為一個模塊。類似地,我們可以將所有管理相關(guān)的路由保存在名為“admin-routes.js”的文件中,并通過導(dǎo)出將其作為單獨的模塊。
// user-routes.js export default [ { path: '/login', component: UserLogin }, { path: '/dashboard', component: UserDashboard, children: [ { path: 'profile', component: UserProfile }, { path: 'settings', component: UserSettings } ] } ]
在“user-routes.js”文件中,我們導(dǎo)出一個包含用戶相關(guān)路由的數(shù)組。每個路由都由一個path和component組成。此外,如果我們需要在一個路由中嵌套子路由,則可以在其children屬性中定義這些子路由。
// admin-routes.js export default [ { path: '/admin', component: AdminDashboard, children: [ { path: 'users', component: UserList }, { path: 'settings', component: AdminSettings } ] } ]
在“admin-routes.js”中,我們根據(jù)需要定義了一組管理相關(guān)的路由。同樣,我們可以將這些路由嵌套在一個父級路由下,以更好地組織我們的應(yīng)用程序。
有了這些路由模塊,我們可以將它們導(dǎo)入到主應(yīng)用程序文件中,并將它們與其他路由合并為一個數(shù)組。Vue Router將在路由變化時根據(jù)我們定義的路徑顯示相應(yīng)組件。
// app.js import Vue from 'vue' import VueRouter from 'vue-router' import routes from './example-app' Vue.use(VueRouter) const router = new VueRouter({ routes }) const app = new Vue({ router }).$mount('#app')
最后,我們將Vue Router設(shè)置為Vue實例的router屬性,并在實例化Vue應(yīng)用程序時將其傳遞給其選項中。現(xiàn)在,我們已經(jīng)成功地將多個路由文件分離并組合成一個獨立的應(yīng)用程序路由數(shù)組,從而更好地組織和管理Vue應(yīng)用程序。