精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在 Vue.js 中使用嵌套路由

開發 前端
嵌套路由允許更復雜的用戶界面以及相互嵌套的組件。讓我們創建一個相對簡單的用例,來展示 Vue Router 中嵌套路由的實用性。

隨著 Vue.js 單頁應用(SPA)變得相當復雜,你開始需要 Vue 路由以及嵌套路由。嵌套路由允許更復雜的用戶界面以及相互嵌套的組件。讓我們創建一個相對簡單的用例,來展示 Vue Router 中嵌套路由的實用性。

用 Vue CLI 進行設置

如果尚未安裝,請運行以下命令全局安裝 Vue CLI:

  1. $ npm install -g @vue/cli 

或者

  1. $ yarn global add @vue/cli 

現在你能從命令行運行 vue 命令了。讓我們創建一個名為 alligator-nest 的 Vue 應用:

  1. $ vue create alligator-nest 

在提示符下選擇默認預設(按 Enter 鍵)。之后,運行以下命令:

  1. $ npm install vue-router 

然后,在你選擇的編輯器中打開 alligator-nest 目錄。

基本代碼

以下 CSS 將幫助我們為 UI 定位元素。將其作為樣式表文件添加到 public/ 文件夾中,并在 public/index.html 中引用它。為此,我們將使用 CSS grid:

grid.css:

  1. .row1 { 
  2.   grid-row-start: 1; 
  3.   grid-row-end: 2; 
  4.  
  5. .row12 { 
  6.   grid-row-start: 1; 
  7.   grid-row-end: 3; 
  8.  
  9. .row123 { 
  10.   grid-row-start: 1; 
  11.   grid-row-end: 4; 
  12.  
  13. .row2 { 
  14.   grid-row-start: 2; 
  15.   grid-row-end: 3; 
  16.  
  17. .row23 { 
  18.   grid-row-start: 2; 
  19.   grid-row-end: 4; 
  20.  
  21. .row3 { 
  22.   grid-row-start: 3; 
  23.   grid-row-end: 4; 
  24.  
  25. .col1 { 
  26.   grid-column-start: 1; 
  27.   grid-column-end: 2; 
  28.  
  29. .col12 { 
  30.   grid-column-start: 1; 
  31.   grid-column-end: 3; 
  32.  
  33. .col123 { 
  34.   grid-column-start: 1; 
  35.   grid-column-end: 4; 
  36.  
  37. .col1234 { 
  38.   grid-column-start: 1; 
  39.   grid-column-end: 5; 
  40.  
  41. .col2 { 
  42.   grid-column-start: 2; 
  43.   grid-column-end: 3; 
  44.  
  45. .col23 { 
  46.   grid-column-start: 2; 
  47.   grid-column-end: 4; 
  48.  
  49. .col234 { 
  50.   grid-column-start: 2; 
  51.   grid-column-end: 5; 
  52.  
  53. .col3 { 
  54.   grid-column-start: 3; 
  55.   grid-column-end: 4; 
  56.  
  57. .col34 { 
  58.   grid-column-start: 3; 
  59.   grid-column-end: 5; 
  60.  
  61. .col4 { 
  62.   grid-column-start: 4; 
  63.   grid-column-end: 5; 

接下來,讓我們對 vue-cli 添加的默認文件進行一些更改。

從 src/components 文件夾中刪除 HelloWorld.vue,并從 src/App.vue 中刪除所有與其相關的東西。對 App.vue 中的 HTML 標記和 CSS 樣式進行以下修改。

  1. <template> 
  2.   <div id="app"> 
  3.     <h1 class="row1 col12">Alligator Nest</h1> 
  4.     <a class="row1 col3">Travels</a> 
  5.     <a class="row1 col4">About</a> 
  6.     <div class="row2 col234"></div> 
  7.   </div> 
  8. </template> 
  9. html, body { 
  10.   height: 100vh; 
  11.   width: 100vw; 
  12.   padding: 0; 
  13.   margin: 0; 
  14.  
  15. #app { 
  16.   font-family: Avenir, Helvetica, Arial, sans-serif; 
  17.   -webkit-font-smoothing: antialiased; 
  18.   -moz-osx-font-smoothing: grayscale; 
  19.   color: #2c3e50; 
  20.   padding: 2%; 
  21.   height: 100%; 
  22.   display: grid; 
  23.   grid-template-rows: 20% 80%; 
  24.   grid-template-columns: 25% 25% 25% 25%; 

 

如果你在項目的根目錄中運行 npm run serve,則可以將鼠標懸停在瀏覽器中的 localhost:8080 上,并查看框架布局。那些 display:grid 屬性很有用!現在我們可以開始創建路由了。

輸入 Vue 路由

在 /components 文件夾中創建一個名為 AboutPage.vue 的組件。它看起來像這樣:

  1. <template> 
  2.   <div> 
  3.     <h2>About</h2> 
  4.     <p>Alligators were around during the time of the dinosaurs.</p> 
  5.   </div> 
  6. </template> 
  7.  
  8. <script> 
  9.   export default { 
  10.     name: 'AboutPage', 
  11.   } 
  12. </script> 
  13.  
  14. <style scoped> 
  15.    
  16. </style> 

 

現在我們的 main.js 文件需要 /about 路由。它看起來像這樣。

  1. import VueRouter from 'vue-router'; 
  2. import Vue from 'vue'; 
  3. import App from './App.vue'; 
  4.  
  5. Vue.config.productionTip = false
  6.  
  7. import VueRouter from 'vue-router'; 
  8. Vue.use(VueRouter); 
  9.  
  10. import AboutPage from './components/AboutPage.vue'; 
  11.  
  12. const routes = [ 
  13.   { path: '/about', component: AboutPage }, 
  14.  
  15. const router = new VueRouter({ 
  16.   routes 
  17. }) 
  18.  
  19. new Vue({ 
  20.   render: h => h(App), 
  21.   router 
  22. }).$mount('#app'); 

最后,讓我們回到 App.vue,并將 “About” 的錨標記更改為屬性為 to="/about"的 標簽。然后,將第二個 div 更改為 標簽。確保保持網格定位類屬性不變。

現在,我們有了一個功能齊全的站點框架,并為 “About” 頁面處理了路由。

我們在此重點介紹路由功能,因此不會在樣式上話費太多時間。盡管如此,我們也要讓Travels 頁面看起來更精致一些。

首先,創建一個 TravelPage,方法與創建 AboutPage 相同。在 main.js 中引用它。

還需要創建以下兩個組件,這些組件最終將嵌套在 TravelPage.vue 中:

TravelAmericaPage.vue

  1. <template> 
  2.   <div> 
  3.     <p>Alligators can be found in the American states of Louisiana and Florida.</p> 
  4.   </div> 
  5. </template> 
  6.  
  7. <script> 
  8.   export default { 
  9.     name: 'TravelAmericaPage' 
  10.   } 
  11. </script> 
  12.  
  13. <style scoped> 
  14. </style> 

 

TravelChinaPage.vue

  1. <template> 
  2.   <div> 
  3.     <p>Alligators can be found in China's Yangtze River Valley.</p> 
  4.   </div> 
  5. </template> 
  6.  
  7. <script> 
  8.   export default { 
  9.     name: 'TravelChinaPage' 
  10.   } 
  11. </script> 
  12.  
  13. <style scoped> 
  14.  
  15. </style> 

 

配置嵌套路由

現在,讓我們同時更新 main.js 和 TravelPage.vue,以使用 children 來引用這些嵌套路由。必須將 main.js 更新為對 routes 常量具有以下定義:

  1. const routes = [ 
  2.   { 
  3.     path: '/travel', component: TravelPage, 
  4.     children: [ 
  5.       { path: '/travel/america', component: TravelAmericaPage }, 
  6.       { path: '/travel/china', component: TravelChinaPage} 
  7.     ] 
  8.   }, 
  9.   { 
  10.     path: '/about', component: AboutPage 
  11.   } 
  12. ]; 

請注意,子級的嵌套可以無限繼續下去。

并且 TravelPage.vue 可以通過以下方式編寫:

TravelPage.vue:

  1. <template> 
  2.   <div id="travel"> 
  3.     <h2 class="row1">Travels</h2> 
  4.     <div class="flex-container row2"> 
  5.       <router-link to="/travel/america">America</router-link> 
  6.       <router-link to="/travel/china">China</router-link> 
  7.     </div> 
  8.     <router-view class="row3"></router-view> 
  9.   </div> 
  10. </template> 
  11.  
  12. <script> 
  13.   export default { 
  14.     name: 'TravelPage' 
  15.   } 
  16. </script> 
  17.  
  18. <style scoped> 
  19. div { 
  20.   text-align: center; 
  21.  
  22. #travel { 
  23.   display: grid; 
  24.   grid-template-rows: 20% 40% 40%; 
  25.  
  26. .flex-container { 
  27.   display: flex; 
  28.   justify-content: space-around; 
  29. </style> 

檢出 localhost:8080,你將看到 Travels 頁面中包含 2 個子頁面!當你單擊任一鏈接時,我們的 URL 也會相應更新。

總結

希望本教程對你了解如何使用嵌套路由有幫助!

關于該主題的其他注意事項——我們可以使用動態段定義路由,例如 path:'/location/:id'。然后在這些路由的視圖上,可以將該 id 引用為 this.$route.params。當你希望在網站和應用上顯示更多特定類型的數據(用戶、圖片等)時,此功能非常有用。

 

責任編輯:趙寧寧 來源: 前端先鋒
相關推薦

2017-07-14 10:10:08

Vue.jsMixin

2023-07-28 13:55:40

便捷選項組件

2021-08-11 07:22:27

Vue 技巧 開發工具

2019-07-26 14:40:58

Vue.jsSocket.IO前端

2021-05-08 06:14:28

Vue.js片段開發

2018-04-04 10:32:13

前端JavascriptVue.js

2016-11-04 19:58:39

vue.js

2017-07-04 17:55:37

Vue.js插件開發

2017-07-20 11:18:22

Vue.jsMVVMMVC

2017-07-11 18:00:21

vue.js數據組件

2024-05-13 08:04:26

Vue.jsWeb應用程序

2022-01-19 22:18:56

Vue.jsVue SPA開發

2023-10-19 13:56:00

Vue項目Mock.js

2021-01-22 11:47:27

Vue.js響應式代碼

2020-09-07 14:40:20

Vue.js構建工具前端

2016-11-01 19:10:33

vue.js前端前端框架

2016-09-21 13:32:13

JavascriptWeb前端

2020-09-16 06:12:30

Vue.js 3.0Suspense組件前端

2023-03-16 14:29:48

Vue.js測試

2024-01-18 11:50:28

點贊
收藏

51CTO技術棧公眾號

精品人妻少妇一区二区| 51国偷自产一区二区三区 | 国产香蕉在线视频| 精品中国亚洲| 色婷婷精品大在线视频 | 亚洲第一成人网站| 亚洲欧美一级| 五月天中文字幕一区二区| 欧美日韩一区二区三区在线观看免| 超碰在线免费97| 欧美69视频| 日韩精品在线观看一区| 手机免费av片| 日韩脚交footjobhdboots| 中文字幕在线不卡一区| 国产欧美日韩视频一区二区三区| 免费精品一区二区| 激情综合电影网| 欲色天天网综合久久| 大桥未久恸哭の女教师| 欧美日韩视频免费看| 偷拍一区二区三区| 黄色一级视频播放| 超碰国产在线| 99精品在线免费| 亚洲bt欧美bt日本bt| 一级黄色av片| 99精品国产福利在线观看免费| 俺也去精品视频在线观看| 亚洲av无码国产精品久久| 久久久91麻豆精品国产一区| 在线观看日韩电影| 国产午夜伦鲁鲁| 日韩免费影院| 1024成人网| 日韩av电影免费在线| 内射无码专区久久亚洲| 国产乱码精品一区二区三区忘忧草| 韩国精品久久久999| 中文字幕av久久爽av| 99精品视频精品精品视频| 亚洲视频777| 免费中文字幕av| 99re8这里有精品热视频免费| 91精品国产综合久久精品麻豆 | 一区二区精品在线观看| 国产三区四区在线观看| 久久久久久夜精品精品免费| 好吊色欧美一区二区三区视频| 午夜精品久久久久久久爽| 激情欧美一区二区| 国产欧亚日韩视频| 亚洲天堂久久久久| 麻豆91小视频| 国产在线视频一区| 在线观看黄色国产| 看国产成人h片视频| 国产精品免费一区豆花| 亚洲av人无码激艳猛片服务器| 久久精选视频| 国产精品户外野外| 中文字幕av网站| 久久国内精品视频| 91深夜福利视频| 国产美女精品视频国产| 国产乱码字幕精品高清av | 国产91久久久| 成人一级视频在线观看| 国产美女精品久久久| 国产91免费看| av在线一区二区| 精品无码久久久久国产| 牛牛影视精品影视| 国产精品视频一二三区| 中国人体摄影一区二区三区| mm1313亚洲国产精品美女| 一区二区三区91| 国产妇女馒头高清泬20p多| 在线天堂新版最新版在线8| 日本韩国欧美一区二区三区| 岛国av在线免费| 国产不卡精品在线| 亚洲成人aaa| 一卡二卡三卡四卡| 999久久久91| 欧美激情视频在线| 无码人妻丰满熟妇精品| 久久99精品国产麻豆婷婷洗澡| 91在线观看免费观看| 成人毛片视频免费看| 91丨porny丨首页| 色姑娘综合网| caoporn免费在线| 亚洲成av人片在线观看| 亚洲色精品三区二区一区| 日本一区二区三区中文字幕| 日韩精品一区二区三区在线| 爱爱的免费视频| 91一区二区| 91精品国产91久久久久| 一区二区视频网站| 成人国产电影网| 亚洲精品高清国产一线久久| 国产区美女在线| 欧美又粗又大又爽| 99热超碰在线| 日韩欧美高清| 97视频免费在线看| 国产精品无码天天爽视频| 99精品欧美一区二区蜜桃免费 | 国产精品手机在线| av在线电影网| 精品国产成人av| 国产又粗又长又爽又黄的视频| 日韩精品欧美大片| 欧美精品一区在线播放| 亚洲高清视频免费观看| 成人综合在线视频| 国产对白在线播放| 韩国美女久久| 欧美精品一区二区三区蜜桃视频| 三级黄色片在线观看| 亚洲一区不卡| 亚洲精品免费在线视频| av在线二区| 在线中文字幕一区| 特大黑人巨人吊xxxx| 欧美日韩mv| 91精品在线一区| 北岛玲日韩精品一区二区三区| 欧美日韩国产中文字幕| 影音先锋资源av| 91精品一区国产高清在线gif| 国产黑人绿帽在线第一区| 黄色av小说在线观看| 亚洲欧美日韩久久| 亚洲 国产 图片| 精品日本12videosex| 51视频国产精品一区二区| 亚洲免费国产视频| 亚洲综合男人的天堂| 下面一进一出好爽视频| 亚洲午夜精品一区 二区 三区| 国产男人精品视频| 爱久久·www| 精品视频一区三区九区| 你懂得视频在线观看| 日韩av在线免费观看不卡| 欧美色图亚洲自拍| 深夜成人影院| 亚洲一二在线观看| 羞羞色院91蜜桃| 国产精品免费av| 国产高清视频网站| 91久久电影| 成人夜晚看av| 污污片在线免费视频| 日韩免费在线观看| 久久精品视频久久| 99久久伊人网影院| 成人中文字幕av| 欧美日韩水蜜桃| 91精品国产综合久久香蕉922| 免费av毛片在线看| 日韩午夜精品电影| 国产中文字幕免费| 91蜜桃免费观看视频| 欧美黄色性生活| 99久久www免费| 亚洲一区二区三区久久| 国产探花视频在线观看| 日韩国产精品亚洲а∨天堂免| 日本中文字幕久久| 国产精品久久久久久久久免费相片| 手机av在线免费| 精品动漫3d一区二区三区免费| 久久99精品久久久久久水蜜桃| 欧美日韩免费看片| 色午夜这里只有精品| 精品久久久免费视频| 欧美日韩免费一区| 91香蕉视频污在线观看| 国产宾馆实践打屁股91| av网站在线观看不卡| 久久要要av| 国产亚洲欧美一区二区三区| 亚洲精品一级二级| 不卡av日日日| 天堂成人在线视频| 欧美日韩免费高清一区色橹橹| 久久精品这里只有精品| 2022国产精品视频| 亚洲美女性囗交| 亚洲毛片一区| 一区二区三区四区视频在线观看| 1769国产精品视频| 国产精品电影网| 日韩经典av| 色老头一区二区三区在线观看| 亚洲精品无码专区| 欧美色国产精品| 四虎成人精品永久免费av| 中文在线免费一区三区高中清不卡| 91精品国产高清91久久久久久| 日韩精品亚洲一区| cao在线观看| 日韩久久电影| 六十路精品视频| 日本高清久久| 国产精品黄色影片导航在线观看| 搞黄网站在线看| 久久精品国产久精国产一老狼| 五月天丁香视频| 日韩视频免费观看高清完整版在线观看| aaaaaa毛片| 一区二区成人在线| 看黄色录像一级片| 久久久精品天堂| 日韩av无码一区二区三区不卡| 黄页网站大全一区二区| 三级4级全黄60分钟| 99视频一区| 欧美狂野激情性xxxx在线观| 999国产精品| 亚洲欧美日韩国产成人综合一二三区 | 亚洲999一在线观看www| 成人在线高清| 日韩av电影院| 中文字幕这里只有精品| 久久久久久69| 伊人精品影院| 久久影视电视剧免费网站清宫辞电视 | 一级一片免费看| 午夜精品福利一区二区三区蜜桃| 91精品国产高清一区二区三蜜臀| 国产精品久久久久影视| 91网站免费视频| 91在线视频网址| 日本一区二区在线免费观看| 国产91在线观看| ass极品水嫩小美女ass| 国产乱码精品一区二区三区五月婷 | 亚洲成人精品久久| 亚洲欧美黄色片| 精品久久久久久久久久久久包黑料 | 毛片aaaaa| 亚洲欧美二区三区| caoporn91| 亚洲美女视频在线观看| 好吊色视频在线观看| 亚洲欧洲精品天堂一级| 国产一二三区精品| 有码一区二区三区| 久久久久亚洲av片无码下载蜜桃 | 黄色网络在线观看| 欧美freesex交免费视频| 米仓穗香在线观看| 亚洲天堂偷拍| a在线视频观看| 国产欧美一区二区色老头| 欧美a在线视频| 久久字幕精品一区| 91插插插插插插插插| 久久99久国产精品黄毛片色诱| 韩国一区二区在线播放| 国产成人精品影视| www.88av| 国产日韩精品一区二区浪潮av| 日本人亚洲人jjzzjjz| 亚洲天堂中文字幕| 日韩欧美国产成人精品免费| 亚洲一区二区三区视频在线播放 | 国产理论电影在线 | www.成人在线视频| 成人黄色生活片| 9l视频自拍蝌蚪9l视频成人| 精品999在线观看| 精品免费在线| 欧美 日韩 国产精品| 国产日韩欧美一区在线| 亚洲激情在线观看视频| 国产一区二区三区精品欧美日韩一区二区三区 | 男人c女人视频| 亚洲一区观看| 日韩av卡一卡二| 成人免费av资源| 青娱乐国产视频| 亚洲最新视频在线观看| 国产寡妇亲子伦一区二区三区四区| 欧美色偷偷大香| 粉嫩小泬无遮挡久久久久久| 亚洲色图第一页| 污片在线免费观看| 国产mv久久久| 亚洲三级av| 手机在线观看国产精品| 伊人久久成人| 国产视频1区2区3区| aaa亚洲精品一二三区| 老司机深夜福利网站| 欧美性猛交xxxx乱大交极品| 一区二区三区午夜| 日韩精品在线免费观看| 搞黄网站在线观看| 国产成人精品久久二区二区| 亚洲精品a区| 亚洲午夜久久久影院伊人| 制服诱惑一区二区| 99热这里只有精品2| 中文字幕av一区二区三区免费看| 国产午夜精品无码一区二区| 欧美日本国产一区| 你懂的在线看| 97人人做人人爱| 亚洲91网站| 亚洲欧美国产一区二区| 香蕉久久久久久久av网站| 绯色av蜜臀vs少妇| 亚洲视频资源在线| 中文字幕人妻精品一区| 亚洲毛片在线观看| 高清毛片在线观看| av在线亚洲男人的天堂| 国产精品伦理久久久久久| 国产精品视频黄色| 久久久99免费| 国产精品美女久久久久av爽| 欧美成人video| 国产剧情在线| 成人写真福利网| 99久久婷婷| 91av视频免费观看| 国产精品国产三级国产aⅴ入口| 久久久黄色大片| 日韩电影中文 亚洲精品乱码| 麻豆免费在线视频| 国产精品一区二区久久| 国产精品日韩精品中文字幕| 18禁免费观看网站| av在线播放成人| 国产亚洲小视频| 精品美女被调教视频大全网站| free性欧美hd另类精品| 97人人澡人人爽| 欧美激情综合色综合啪啪| 韩国三级hd中文字幕有哪些| 国产精品大尺度| 97国产成人无码精品久久久| 俺去了亚洲欧美日韩| 日韩一区中文| 女同性恋一区二区| 国产成人av自拍| 国产午夜小视频| 日韩av在线最新| 成人线上视频| 特级西西444www大精品视频| 久久成人精品无人区| 人人澡人人澡人人看| 日韩色视频在线观看| 不卡视频观看| 欧美伦理一区二区| 美女免费视频一区二区| 午夜爱爱毛片xxxx视频免费看| 欧美不卡一区二区三区四区| 草草在线观看| 欧美中日韩免费视频| 久久精品免费看| 国产精品白嫩白嫩大学美女| 精品国产青草久久久久福利| 色综合桃花网| 亚洲精品一区国产精品| 国产麻豆91精品| 日韩精品久久久久久久酒店| 在线日韩av观看| 嫩呦国产一区二区三区av| 一二三四视频社区在线| 国产网站一区二区三区| 国产成人精品一区二三区四区五区| 高清欧美性猛交xxxx黑人猛交| 免费观看不卡av| 在线播放免费视频| 欧美日韩在线视频一区| 日韩三级影院| 国产视频不卡| 裸体在线国模精品偷拍| 日本少妇bbwbbw精品| 宅男66日本亚洲欧美视频| 亚洲国产一区二区三区网站| 18岁视频在线观看| 亚洲精品免费播放| 国产最新视频在线观看| 97久久精品午夜一区二区| 久久这里有精品15一区二区三区| 老湿机69福利| 国产视频亚洲视频| 视频一区中文字幕精品| 午夜激情福利在线| 精品国产乱码久久久久久天美 | 亚洲蜜臀av乱码久久精品| 九色在线观看|