路由是指根據(jù)不同的URL地址,返回不同的頁面內(nèi)容。Vue.js提供了官方的Vue Router,是Vue.js應(yīng)用最常用的路由框架。Vue Router可以讓我們創(chuàng)建單頁應(yīng)用(SPA)。在單頁應(yīng)用中,頁面不會刷新,而是通過局部刷新來展示頁面內(nèi)容。
//引入Vue和Vue Router模塊 import Vue from 'vue' import VueRouter from 'vue-router' //使用Vue Router模塊 Vue.use(VueRouter) //配置路由 const routes = [ { path: '/', name: 'Home', component: Home }, { path: '/about', name: 'About', component: About } ] //創(chuàng)建Vue Router實例 const router = new VueRouter({ routes }) //創(chuàng)建Vue實例,并注入路由實例 new Vue({ router, render: h =>h(App) }).$mount('#app')
在上面的代碼中,我們首先引入了Vue和Vue Router模塊,然后通過Vue.use(VueRouter)使用Vue Router模塊。接著我們配置了路由,聲明了路徑、路由名稱和對應(yīng)的組件。最后,我們創(chuàng)建了Vue Router實例,并傳入配置路由文件。最后,我們創(chuàng)建了Vue實例并將創(chuàng)建好的路由實例注入。
在Vue Router中,我們可以使用<router-link>
和<router-view>
兩個標(biāo)簽實現(xiàn)頁面跳轉(zhuǎn)和層級渲染。其中<router-link>
標(biāo)簽生成一個a標(biāo)簽,可以通過to
屬性設(shè)置跳轉(zhuǎn)路徑。而<router-view>
標(biāo)簽則是占位符,可根據(jù)當(dāng)前的路由匹配渲染對應(yīng)路徑下的組件。
我們可以使用<router-link>
標(biāo)簽在組件之間跳轉(zhuǎn)。
//在組件中使用router-linkHome About
當(dāng)我們點擊<router-link>
標(biāo)簽時,to
屬性定義的路徑對應(yīng)的組件會渲染在<router-view>
標(biāo)簽中。
//在組件中使用router-view
除了以上路由的基礎(chǔ)配置,Vue Router還提供了很多高級功能,如路由懶加載、路由鉤子、命名路由和嵌套路由等。通過Vue Router能力強大的特性,我們可以輕松構(gòu)建一個高效且功能強大的SPA應(yīng)用程序。