Vue router組件化開發(fā)總結(jié)

Vue router就是Vue路由,是Vue不同組件之間跳轉(zhuǎn)的重要方式。主要分為帶參數(shù)跳轉(zhuǎn)和不帶參數(shù)跳轉(zhuǎn)兩種方式
在組件化開發(fā)里,Vue router都是在項(xiàng)目根目錄下router.js統(tǒng)一管理,使用AMD規(guī)范將組件引入進(jìn)來(lái)

import downApp from '@/components/downApp.vue'

隨后引用Router,再將接口暴露出去,一般使用webpack構(gòu)建項(xiàng)目的時(shí)候就已經(jīng)做好這個(gè)步驟了

Vue.use(Router)
export default new Router({
  //歷史模式,也就是將頁(yè)面上鏈接的主頁(yè)前面的無(wú)用信息過(guò)濾掉
  mode:'history',
  routers:[{}...]

})

routers便是定義路由的地方,參數(shù)分別有path(路徑),name(可選,路由名),alias(可選,別名),component(組件名),meta(可選,元數(shù)據(jù),多用在導(dǎo)航守衛(wèi)上),redirect(可選,重定向,多用于導(dǎo)航守衛(wèi)返回原頁(yè)面)

需要注意的是,path在定義子路由時(shí),不能加上/

路由需要跳轉(zhuǎn),需要在template構(gòu)建<router-view></router-view>,組件將會(huì)在這里進(jìn)行渲染

不帶參數(shù)的跳轉(zhuǎn)

<router-link to="/foo">Go to Foo</router-link>

帶參數(shù)的跳轉(zhuǎn)

帶參數(shù)的跳轉(zhuǎn)一般使用函數(shù)的形式,一般有以下幾種方式

  • 帶查詢參數(shù),使用pathquery
                this.$router.push({
                    path:'/song',
                    query:{id}
                })

這種方式不需要為路由命名,變成/song?id=,使用這種傳遞方式時(shí),接收參數(shù)的組件可以在query參數(shù)里面獲取相應(yīng)的參數(shù)

//目標(biāo)組件可以用這種方式接受參數(shù)
this.$route.query.id
  • 命名組件帶參數(shù)
this.$router.push({
  name:'/song',
  params:'{id}'
})

這種方式需要為路由命名,變成/song/參數(shù)值

如果pathparams共用并且沒(méi)有name時(shí),params不會(huì)生效

  • url帶參數(shù)
router.push({ path: `/song/${id}` })

這種方式也是變成/song/參數(shù)值

使用router.go(n)操作history

router.go(1)
//前進(jìn)一步
router.go(-1)
//后退一步
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容