国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

vue-router 路由基礎的詳解

2024-05-06 15:25:32
字體:
來源:轉載
供稿:網友

vue-router 路由基礎的詳解

今天我總結了一下vue-route基礎,vue官方推薦的路由。

一、起步

HTML

<div id="myDiv"> <h1>簡單路由</h1> <router-link to="/foo">Go to foo</router-link>   <router-link to="/bar">Go to bar</router-link>  // 渲染出口 <router-view></router-view></div> 

創建模板(組件):

(也可以用import 引入外部組件)

  var foo={template:"<p>我是foo 組件</p>"};  var bar={template:"<p>我是bar 組件</p>"};

組件注入路由:

var routes = [   {path:'/foo',component:foo},   {path:'/bar',component:b ar},  ];

創建路由實例:

// 這里還可以傳入其他配置const router = new VueRouter({   routes   // (縮寫)相當于 routes: routes;   });

注意這里 routes 沒有 ‘ r ' (不要寫成 routers)

創建vue實例(并掛載實例)

 var routerVue = new Vue({   router  }).$mount("#myDiv"); 

二、動態路由匹配

有時候我們需要的是模板結構一樣,當時數據不一樣,就相當于我們要把不同ID的登錄用戶連接到同一個頁面,但要顯示每個用戶的獨立信息,這時我們就用到了動態路由匹配。

動態路由主要用到了全局 $route.params 和路由的動態參數,全局route 的 params API 存儲著 路由的所有參數,路徑的參數用 “ : ”來標記:

HTML

<div id="myDiv">// 點擊對應鏈接時傳入對應參數foo 和 bar <router-link to="/User/:foo">Go to foo</router-link>  <router-link to="/User/:bar">Go to bar</router-link>   <router-view></router-view></div> 

JS

const User = {   template:'<p>我的ID是{{ $route.params.id }}</p>',// 在路由切換時可以觀察路由   watch:{    '$route'(to,form){     console.log(to); //要到達的     console.log(form);    }   }  }  const router = new VueRouter({   routes:[     {path:'/user/:id',component:User} // 標記動態參數 id   ]  });  var myVue = new Vue({    router  }).$mount("#myDiv")

三、嵌套路由

1.嵌套路由講的是我們可以在 <router-view>中去在渲染 <router-view> 這時要在配置路由時使用 children

例如:

HTML:

<div id="myDiv"> <router-link to="/User/:foo">Go to foo</router-link>  <router-link to="/User/:bar">Go to bar</router-link>   <router-view></router-view></div> 

JS:

const User = {   template:'<div><p>我的ID是{{ $route.params.id }}</p><router-link to="/user/childone">ChildOne</router-link><router-link to="/user/childtwo">ChildOne</router-link><router-view></router-view></div>',   }   // 子路由   const userChildOne = {    template:'<div>我是 userChildOne</div>'   }   const userChildTwo = {    template:'<div>我是 userChildTwo</div>'   }  const router = new VueRouter({   routes:[     {path:'/user/:id',component:User,      children:[ // 用法和參數和routes 一樣       {path:"/user/childone",component:userChildOne},       {path:"/user/childtwo",component:userChildTwo}      ]     }   ]  });  var myVue = new Vue({    router  }).$mount("#myDiv")            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 东兰县| 永寿县| 云霄县| 乐业县| 和顺县| 元阳县| 西城区| 江陵县| 公主岭市| 贵港市| 瑞安市| 西安市| 宜丰县| 蒙阴县| 青川县| 扎囊县| 剑阁县| 烟台市| 青阳县| 白城市| 甘孜| 尖扎县| 宝坻区| 洛阳市| 准格尔旗| 崇文区| 普陀区| 天镇县| 台南县| 巧家县| 安庆市| 新巴尔虎右旗| 宁乡县| 沈阳市| 吉安市| 年辖:市辖区| 桃园县| 靖江市| 广安市| 琼海市| 宁国市|