您好,登錄后才能下訂單哦!
什么是vue.js路由?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
路由是指路由器從一個接口上收到數(shù)據(jù)包,根據(jù)數(shù)據(jù)包的目的地址進(jìn)行定向并轉(zhuǎn)發(fā)到另一個接口的過程。
Vue.js路由允許我們通過不同的URL訪問不同的內(nèi)容。
通過Vue.js可以實(shí)現(xiàn)多視圖的單頁Web應(yīng)用(single page web application,SPA)。
Vue.js路由需要載入vue-router 庫
但是使用路由時,url也是隨著改變的,用戶瀏覽到一個網(wǎng)頁時可以直接復(fù)制或收藏當(dāng)前頁的url給別人,這種方式對于搜索引擎和用戶來說都是友好的。
簡單實(shí)例
Vue.js + vue-router 可以很簡單的實(shí)現(xiàn)單頁應(yīng)用。
<router-link> 是一個組件,該組件用于設(shè)置一個導(dǎo)航鏈接,切換不同 HTML 內(nèi)容。 to 屬性為目標(biāo)地址, 即要顯示的內(nèi)容。
以下實(shí)例中我們將 vue-router 加進(jìn)來,然后配置組件和路由映射,再告訴 vue-router 在哪里渲染它們。代碼如下所示:
HTML代碼
<script src="https://unpkg.com/vue/dist/vue.js"></script><script src="https://unpkg.com/vue-router/dist/vue-router.js"></script> <div id="app"> <h2>Hello App!</h2> <p> <!-- 使用 router-link 組件來導(dǎo)航. --> <!-- 通過傳入 `to` 屬性指定鏈接. --> <!-- <router-link> 默認(rèn)會被渲染成一個 `<a>` 標(biāo)簽 --> <router-link to="/foo">Go to Foo</router-link> <router-link to="/bar">Go to Bar</router-link> </p> <!-- 路由出口 --> <!-- 路由匹配到的組件將渲染在這里 --> <router-view></router-view></div>
JavaScript代碼
// 0. 如果使用模塊化機(jī)制編程,導(dǎo)入 Vue 和 VueRouter,要調(diào)用 Vue.use(VueRouter) // 1. 定義(路由)組件。 // 可以從其他文件 import 進(jìn)來 const Foo = { template: '<div>foo</div>' } const Bar = { template: '<div>bar</div>' } // 2. 定義路由 // 每個路由應(yīng)該映射一個組件。 其中"component" 可以是 // 通過 Vue.extend() 創(chuàng)建的組件構(gòu)造器, // 或者,只是一個組件配置對象。 // 我們晚點(diǎn)再討論嵌套路由。 const routes = [ { path: '/foo', component: Foo }, { path: '/bar', component: Bar } ] // 3. 創(chuàng)建 router 實(shí)例,然后傳 `routes` 配置 // 你還可以傳別的配置參數(shù), 不過先這么簡單著吧。 const router = new VueRouter({ routes // (縮寫)相當(dāng)于 routes: routes }) // 4. 創(chuàng)建和掛載根實(shí)例。 // 記得要通過 router 配置參數(shù)注入路由, // 從而讓整個應(yīng)用都有路由功能 const app = new Vue({ router }).$mount('#app') // 現(xiàn)在,應(yīng)用已經(jīng)啟動了!
點(diǎn)擊過的導(dǎo)航鏈接都會加上樣式 class ="router-link-exact-active router-link-active"。
看完上述內(nèi)容,你們掌握什么是vue.js路由的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。