《Vue Router實戰教程》5.嵌套路由

歡迎觀看《Vue Router 實戰(第4版)》視頻課程

    1. 嵌套路由

一些應用程序的 UI 由多層嵌套的組件組成。在這種情況下,URL 的片段通常對應于特定的嵌套組件結構,例如:

通過 Vue Router,你可以使用嵌套路由配置來表達這種關系。

接著上節創建的 app :

<!-- App.vue -->

<template>

??<router-view />

</template>

<!-- User.vue -->

<template>

??<div>

????User {{ $route.params.id }}

??</div>

</template>

import User from './User.vue'

// 這些都會傳遞給 `createRouter`

const routes = [{ path: '/user/:id', component: User }]

這里的 <router-view> 是一個頂層的 router-view。它渲染頂層路由匹配的組件。同樣地,一個被渲染的組件也可以包含自己嵌套的 <router-view>。例如,如果我們在 User 組件的模板內添加一個 <router-view>:

<!-- User.vue -->

<template>

??<div class="user">

????<h2>User {{ $route.params.id }}</h2>

????<router-view />

??</div>

</template>

要將組件渲染到這個嵌套的 router-view 中,我們需要在路由中配置 children:

const routes = [

??{

????path: '/user/:id',

????component: User,

????children: [

??????{

????????// 當 /user/:id/profile 匹配成功

????????// UserProfile 將被渲染到 User 的 <router-view> 內部

????????path: 'profile',

????????component: UserProfile,

??????},

??????{

????????// 當 /user/:id/posts 匹配成功

????????// UserPosts 將被渲染到 User 的 <router-view> 內部

????????path: 'posts',

????????component: UserPosts,

??????},

????],

??},

]

注意,以 / 開頭的嵌套路徑將被視為根路徑。這允許你利用組件嵌套,而不必使用嵌套的 URL。

如你所見,children 配置只是另一個路由數組,就像 routes 本身一樣。因此,你可以根據自己的需要,不斷地嵌套視圖。

此時,按照上面的配置,當你訪問 /user/eduardo 時,在 User 的 router-view 里面什么都不會呈現,因為沒有匹配到嵌套路由。也許你確實想在那里渲染一些東西。在這種情況下,你可以提供一個空的嵌套路徑:

const routes = [

??{

????path: '/user/:id',

????component: User,

????children: [

??????// 當 /user/:id 匹配成功

??????// UserHome 將被渲染到 User 的 <router-view> 內部

??????{ path: '', component: UserHome },

??????// ...其他子路由

????],

??},

]

這個例子的 demo 可以在這里找到。

      1. 嵌套的命名路由

在處理命名路由時,你通常會給子路由命名:

const routes = [

??{

????path: '/user/:id',

????component: User,

????// 請注意,只有子路由具有名稱

????children: [{ path: '', name: 'user', component: UserHome }],

??},

]

這將確保導航到 /user/:id 時始終顯示嵌套路由。

在一些場景中,你可能希望導航到命名路由而不導航到嵌套路由。例如,你想導航 /user/:id 而不顯示嵌套路由。那樣的話,你還可以命名父路由,但請注意重新加載頁面將始終顯示嵌套的子路由,因為它被視為指向路徑/users/:id 的導航,而不是命名路由:

const routes = [

??{

????path: '/user/:id',

????name: 'user-parent',

????component: User,

????children: [{ path: '', name: 'user', component: UserHome }],

??},

]

      1. 忽略父組件4.1+

我們還可以僅利用路由的父子關系,但不嵌套路由組件。這對于將具有公共路徑前綴的路由分組在一起或使用更高級的功能時很有用,例如:路由獨享的守衛或路由元信息。

為了實現這一點, 我們在父路由中省略了 component 和 components 選項

const routes = [

??{

????path: '/admin',

????children: [

??????{ path: '', component: AdminOverview },

??????{ path: 'users', component: AdminUserList },

??????{ path: 'users/:id', component: AdminUserDetails },

????],

??},

]

由于父級沒有指定路由組件,頂級 <router-view> 將跳過父級并僅使用子路由組件。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/901182.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/901182.shtml
英文地址,請注明出處:http://en.pswp.cn/news/901182.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用Python解決Logistic方程

引言 在數學和計算機科學中,Logistic 方程是描述人口增長、傳播過程等現象的一種常見模型。它通常用于表示一種有限資源下的增長過程,比如動物種群、疾病傳播等。本文將帶領大家通過 Python 實現 Logistic 方程的求解,幫助你更好地理解這一經典數學模型。 1.什么是 Logist…

《從零搭建Vue3項目實戰》(AI輔助搭建Vue3+ElemntPlus后臺管理項目)零基礎入門系列第十二篇(完結篇):數據統計功能實現

&#x1f91f;致敬讀者 &#x1f7e9;感謝閱讀&#x1f7e6;笑口常開&#x1f7ea;生日快樂?早點睡覺 &#x1f4d8;博主相關 &#x1f7e7;博主信息&#x1f7e8;博客首頁&#x1f7eb;專欄推薦&#x1f7e5;活動信息 文章目錄 《從零搭建Vue3項目實戰》&#xff08;AI輔助…

研究嵌入式軟件架構時遇到的初始化堆棧溢出問題

文章目錄 2025年4月10日新增分析PC寄存器指針值排查問題map文件設計到的知識點1. **.bss 段&#xff08;Block Started by Symbol&#xff09;**2. **.data 段**3. **.text 段**4. **.heap 段**5. **.stack 段**6. **.rodata 段&#xff08;只讀數據段&#xff09;**7. **.init…

軟件架構評估兩大法:ATAM 和 SAAM 的對比與實踐

架構權衡分析方法&#xff08;ATAM&#xff09;和軟件架構分析方法&#xff08;SAAM&#xff09;是軟件架構評估領域中非常重要的兩種方法&#xff0c;以下為你詳細介紹&#xff1a; 一、架構權衡分析方法&#xff08;ATAM&#xff09; 1.背景與起源&#xff1a;ATAM 是由卡耐…

Python爬蟲-爬取全球股市漲跌幅和漲跌額數據

前言 本文是該專欄的第52篇,后面會持續分享python爬蟲干貨知識,記得關注。 本文中,筆者將基于Python爬蟲,實現批量采集全球股市行情(亞洲,美洲,歐非,其他等)的各股市“漲跌幅”以及“漲跌額”數據。 具體實現思路和詳細邏輯,筆者將在正文結合完整代碼進行詳細介紹。…

電流互感器的兩相星形接線的建模與仿真

微?“電擊小子程高興的MATLAB小屋”獲取巨額優惠 1.模型簡介 本仿真模型基于MATLAB/Simulink&#xff08;版本MATLAB 2016Rb&#xff09;軟件。建議采用matlab2016 Rb及以上版本打開。&#xff08;若需要其他版本可聯系代為轉換&#xff09; 2.仿真模型 3.仿真結果 3.1一次…

詳解 kotlin 相對 Java 特有的關鍵字及使用

文章目錄 1. val 和 var2. fun3. when4. is 和 !is5. lateinit6. by7. reified8. companion 本文首發地址&#xff1a;https://h89.cn/archives/366.html 最新更新地址&#xff1a;https://gitee.com/chenjim/chenjimblog Kotlin 在兼容Java的基礎上&#xff0c;引入了許多特有…

國標GB28181視頻平臺EasyCVR如何搭建汽車修理廠遠程視頻網絡監控方案

一、背景分析 近年我國汽車保有量持續攀升&#xff0c;與之相伴的汽車保養維修需求也逐漸提高。隨著社會經濟的發展&#xff0c;消費者對汽車維修服務質量的要求越來越高&#xff0c;這使得汽車維修店的安全防范與人員管理問題面臨著巨大挑戰。 多數汽車維修店分布分散&#…

linux RCU技術

RCU&#xff08;Read-Copy-Update&#xff09;是Linux內核中的一種同步機制&#xff0c;用于在多核處理器環境中實現無鎖讀取和延遲更新。Linux RCU&#xff08;Read-Copy-Update&#xff09;技術通過一種高效的同步機制來處理并發沖突&#xff0c;確保在多核環境中讀者和寫者對…

【筆記ing】AI大模型-02開發環境搭建

按實驗需求合理選用實例規格&#xff0c;一般&#xff1a;模型開發階段&#xff1a;使用最低算力2U8GB CPU。訓練或推理階段&#xff1a;切換至GPU規格&#xff0c;用完及時關閉算力環境&#xff0c;且切回最低算力規格。 每次實驗結束手動關閉實例。使用ModelArts公有云資源。…

Python——numpy測試題目

題目&#xff1a; 生成一個2行3列隨機整數二維數組a使用Numpy方法對&#xff08;1&#xff09;中數組a進行整體求積使用Numpy方法對&#xff08;1&#xff09;中數組a進行求每列最大值索引定義一個NumPy一維數組 b&#xff0c;元素為 1 到 10 的整數獲取&#xff08;4&#x…

系分論文《論面向服務開發方法在設備租賃行業的應用》

系統分析師論文系列 【摘要】 2022年5月&#xff0c;我司承接某工程機械租賃企業"智能租賃運營管理平臺"建設項目&#xff0c;我作為系統分析師主導系統架構設計。該項目需整合8大類2000余臺設備資產&#xff0c;覆蓋全國15個區域運營中心與300家代理商&#xff0c;實…

Unity UI中的Pixels Per Unit

Pixels Per Unit在圖片導入到Unity的時候&#xff0c;將圖片格式設置為Sprite的情況下會出現&#xff0c;其意思是精靈中的多少像素對應世界中的一個單位&#xff0c;默認是100 1. 對于在世界坐標中 在世界坐標中&#xff0c;一般對于Sprite的應用是Sprite Renderer組件 使…

Boost Graph Library (BGL) 介紹與使用示例

Boost Graph Library (BGL) 介紹與使用示例 Boost Graph Library (BGL) 是 Boost 庫中用于圖論計算的模塊&#xff0c;提供了處理圖數據結構的通用接口和多種圖算法實現。 BGL 主要特性 提供多種圖表示方式&#xff1a;鄰接表、鄰接矩陣等包含常用圖算法&#xff1a;DFS、BF…

opencv(C++)操作圖像像素

文章目錄 添加噪點的案例圖像像素值1、訪問圖像屬性2、像素訪問方法 at灰度圖像彩色圖像 3、OpenCV 的向量類型4、 圖像傳遞方式 The cv::Mat_ 類1、作用及優點2、使用 cv::Mat_ 簡化像素訪問 用指針掃描圖像背景算法案例原理1. 圖像數據存儲的基本結構2、行填充&#xff08;Pa…

Python實現貪吃蛇一

貪吃蛇是一款經典的小游戲&#xff0c;最近嘗試用Python實現它。先做一個基礎版本實現以下目標&#xff1a; 1、做一個按鈕&#xff0c;控制游戲開始 2、按Q鍵退出游戲 3、右上角顯示一個記分牌 4、隨機生成一個食物&#xff0c;蛇吃到食物后長度加一&#xff0c;得10分 5、蛇碰…

《AI大模型應知應會100篇》第13篇:大模型評測標準:如何判斷一個模型的優劣

第13篇&#xff1a;大模型評測標準&#xff1a;如何判斷一個模型的優劣 摘要 近年來&#xff0c;大語言模型&#xff08;LLMs&#xff09;在自然語言處理、代碼生成、多模態任務等領域取得了顯著進展。然而&#xff0c;隨著模型數量和規模的增長&#xff0c;如何科學評估這些模…

工會考試重點內容有哪些:核心考點與備考指南

工會考試重點內容總結&#xff1a;核心考點與備考指南 工會考試主要考察考生對工會法律法規、職能職責、實務操作等內容的掌握程度&#xff0c;適用于企事業單位工會干部、社會化工會工作者等崗位的選拔。本文梳理工會考試的核心考點&#xff0c;幫助考生高效備考。 一、工會…

Verilog學習-1.模塊的結構

module aoi(a,b,c,d,f);/*模塊名為aoi&#xff0c;端口列表a、b、c、d、f*/ input a,b,c,d;/*模塊的輸入端口為a,b,c,d*/ output f;;/*模塊的輸出端口為f*/ wire a,b,c,d,f;/*定義信號的數據類型*/ assign f~((a&b)|(~(c&d)));/*邏輯功能描述*/ endmoduleveirlog hdl 程…

MySQL數據庫備份與恢復詳解

在數據庫管理中&#xff0c;數據的備份與恢復是至關重要的一環。對于MySQL數據庫&#xff0c;定期備份不僅能防止數據丟失&#xff0c;還能在發生故障時快速恢復數據庫。本文將詳細介紹MySQL數據庫的備份與恢復方法&#xff0c;覆蓋所有常用備份和恢復方式&#xff0c;幫助大家…