vue學(xué)習(xí)筆記——vue-router

1.什么是前端路由?

前端路由是根據(jù)不同的URL地址顯示不同的內(nèi)容或頁(yè)面。

2.什么時(shí)候使用前端路由?

在單頁(yè)面應(yīng)用時(shí),大部分頁(yè)面結(jié)構(gòu)不變,只改變部分內(nèi)容的時(shí)候應(yīng)用。

SPA:?jiǎn)雾?yè)web應(yīng)用,就是只有一張web頁(yè)面的應(yīng)用,是加載單個(gè)HTML頁(yè)面并在用戶與應(yīng)用程序交互時(shí),動(dòng)態(tài)更新的web應(yīng)用程序。

3.vue前端路由——vue-router

vue-router是用來(lái)構(gòu)建SPA(single page web application)的關(guān)鍵。

4.vue-router使用

HTML

<router-link></router-link>

JS

this.$router.push({path:' '});
5.vue-router分類:動(dòng)態(tài)路由、嵌套路由、編程式路由、命名路由和命名空間

1.動(dòng)態(tài)路由

export default new Router({
  routes: [
    {
      path:'detail/:detailId',
      name:'Detail',
      component:Detail
    }
  ]
})

訪問(wèn)http://localhost:18080/#/detail/123即可查看detailId為123的detail頁(yè)面
2.嵌套路由

export default new Router({
  routes: [
    {
      path:'detail',
      name:'Detail',
      component:Detail,
      children:[
          {
            path:'text',
            name:'text',
            component:Text
          }
      ]
    }
  ]
})
<router-link to="/detail/text">顯示detail詳情頁(yè)文本信息</router-link>
<div>
  <router-view></router-view>//router-view是一個(gè)載體,專門用來(lái)承擔(dān)組件渲染,在Detail頁(yè)面中定義router-view定義一個(gè)載體用來(lái)渲染
</div> 

在detail組件中,點(diǎn)擊router-link按鈕,訪問(wèn)http://localhost:18080/#/detail/text鏈接,即可查看detail的子頁(yè)面text頁(yè)面
3.編程式路由(通過(guò)js來(lái)實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn))

$router.push("name")
$router.push({path:"name"})
$router.push({path:"name?id=123"})
$router.push({path:"name",query:{id:123})
$router.go(1)

4.命名路由和命名空間
命名路由(給路由定義不同的名字,根據(jù)名字進(jìn)行匹配)

export default new Router({
  routes: [
    {
      path:'detail:detailId',
      name:'Detail',
      component:Detail
    }
  ]
})

通過(guò)name來(lái)跳轉(zhuǎn)路由

<router-link :to="{name:'Detail',params:{detailId:123}}"></router-link>

命名空間(給不同的router-view定義名字,router-link通過(guò)名字進(jìn)行對(duì)應(yīng)組件的渲染。)

export default new Router({
  routes: [
    {
      path: '/detail',
      name: 'Detail',
      components:{
        default:Detail,
        text:Text,
        img:Img,
      } 
     } 
  ]
})
<router-view></router-view>//渲染detail組件
<router-view name="text" ></router-view>//渲染text組件
<router-view name="img"></router-view>//渲染img組件
?著作權(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)容

  • 下雨了,好想把窗戶全部打開… 很久都沒(méi)有這樣安安靜靜地看過(guò)下雨了。這一刻仿佛回到很多年以前,那時(shí)候還小,一下雨就被...
    夏天的嘟小嘟閱讀 185評(píng)論 0 0
  • 2018.2.3.周六,晴(二十天) 今天是假期的第一天,源于孩子的成績(jī)還不錯(cuò),讓她今天好好玩玩。...
    山中的風(fēng)閱讀 412評(píng)論 0 0
  • 一面是電話面試,周五會(huì)去公司二面,問(wèn)了主要是簡(jiǎn)歷的問(wèn)題,不過(guò)問(wèn)的比較細(xì)致:1、我在簡(jiǎn)歷上寫了聊天機(jī)器人的東西,我提...
    文哥的學(xué)習(xí)日記閱讀 1,163評(píng)論 0 4

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