如何在vue項(xiàng)目中使用vue-router方法?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
成都創(chuàng)新互聯(lián)公司一直秉承“誠信做人,踏實(shí)做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務(wù)為基礎(chǔ),以質(zhì)量求生存,以技術(shù)求發(fā)展,成交一個客戶多一個朋友!為您提供做網(wǎng)站、成都網(wǎng)站建設(shè)、成都網(wǎng)頁設(shè)計(jì)、成都小程序開發(fā)、成都網(wǎng)站開發(fā)、成都網(wǎng)站制作、成都軟件開發(fā)、成都App制作是成都本地專業(yè)的網(wǎng)站建設(shè)和網(wǎng)站設(shè)計(jì)公司,等你一起來見證!
Vue具體輕量級框架、簡單易學(xué)、雙向數(shù)據(jù)綁定、組件化、數(shù)據(jù)和結(jié)構(gòu)的分離、虛擬DOM、運(yùn)行速度快等優(yōu)勢,Vue中頁面使用的是局部刷新,不用每次跳轉(zhuǎn)頁面都要請求所有數(shù)據(jù)和dom,可以大大提升訪問速度和用戶體驗(yàn)。
一、路由的配置
自動安裝的vue-router,會在src 文件夾下有個一個 router -> index.js 文件 在 index.js 中創(chuàng)建 routers 對象,引入所需的組件并配置路徑
在創(chuàng)建的 routers 對象中, path 配置了路由的路徑,component 配置了映射的組件
然后在main.js里面引入router文件
在創(chuàng)建的 router 對象中,如果不配置 mode,就會使用默認(rèn)的 hash 模式,該模式下會將路徑格式化為 #! 開頭。
添加 mode: 'history' 之后將使用 HTML5 history 模式,該模式下沒有 # 前綴,而且可以使用 pushState 和 replaceState 來管理記錄。
關(guān)于 HTML5 history 模式的更多內(nèi)容,可以自行度娘
二、嵌套路由
在構(gòu)建的vue實(shí)例中,為了加深項(xiàng)目層級,App.vue 只是作為一個存放組件的容器
其中 是用來渲染通過路由映射過來的組件,當(dāng)路徑更改時, 中的內(nèi)容也會發(fā)生更改
上面已經(jīng)配置了兩個路由,當(dāng)打開 http://localhost:8080 或者 http://localhost:8080/index的時候,就會在 中渲染 index.vue 組件 index.vue 是真正的父組件,其它的子組件都會渲染到 index.vue 中的
想要在一級路由中實(shí)現(xiàn)嵌套二級路由,就要修改 router -> index.js
在配置的路由后面,添加 children,并在 children 中添加二級路由,就能實(shí)現(xiàn)路由嵌套。 配置 path 的時候,以 " / " 開頭的嵌套路徑會被當(dāng)作根路徑,所以子路由的 path 需不需要添加 " / " 就要看個人需求了
三、使用 映射路由
如果只需要跳轉(zhuǎn)頁面,不需要添加驗(yàn)證方法的情況,可以使用 來實(shí)現(xiàn)導(dǎo)航的功能:
<router-link class="item" to="/index/login" >{{ text }}</router-link> <router-link class="item" :to="{path:url, query:data}" >{{ text }}</router-link>
在編譯之后, 會被渲染為 標(biāo)簽, to 會被渲染為 href,當(dāng) 被點(diǎn)擊的時候,url 會發(fā)生相應(yīng)的改變
如果使用 v-bind 指令,還可以在 to 后面接變量,配合 v-for 指令可以渲染路由菜單
如果需要傳入不同參數(shù) ,可以在路由中添加動態(tài)參數(shù),給 to 傳入一個對象
{ path: item.url, query: { id: '007' } }
然后還可以使用 $ route.query.id
來獲取到對應(yīng)的參數(shù)
四、編程式導(dǎo)航
然而在實(shí)際項(xiàng)目下,有很多鏈接在執(zhí)行跳轉(zhuǎn)之前,還會執(zhí)行方法對數(shù)據(jù)進(jìn)行處理,這時可以使用 this.$router.push(location) 來修改 url 完成跳轉(zhuǎn)
// 綁定goLogin <button class="login" @click="goLogin"></button> // 定義goLogin methods: { goLogin() { this.routes.push('/login') } },
push 后面可以是對象,也可以是字符串:
// 字符串 this.$router.push('/index') // 對象 this.$router.push({ path: '/index' }) // 命名的路由 this.$router.push({ name: 'login', params: { userId: '123' }})
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
文章標(biāo)題:如何在vue項(xiàng)目中使用vue-router方法
鏈接分享:http://muchs.cn/article0/pjpoio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、軟件開發(fā)、Google、網(wǎng)站維護(hù)、全網(wǎng)營銷推廣、移動網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)