VueRouter路由組件的用法介紹

1.1、<router-link>標簽

<router-link>標簽的作用是實現路由之間的跳轉功能,默認情況下,<router-link>標簽是采用超鏈接<a>標簽顯示的,通過to屬性指定需要跳轉的路由地址。當然,如果你不想使用默認的<a>標簽,也可以使用tag屬性自定義其他的標簽。

<router-link>標簽中的屬性有下面這些:

?注意:<router-link>標簽可以在不進行頁面刷新的情況下,改變瀏覽器的URL地址,并觸發相應路由的更新,使得<router-view>組件能夠渲染與新路由對應的內容。

1.2、<router-view>標簽

<router-view>標簽的作用是指定路由視圖,也就是指定顯示具體路由組件的區域,它相當于一個路由區域占位符,當路由切換的時候,會將路由對應的組件內容顯示在<router-view>標簽所在的位置之上。

需要注意的是,一個<router-view>標簽只能顯示一層路由,如果在router/index.js文件中存在多級嵌套路由,那么在對應的父路由組件中,也必須使用<router-view>標簽,這樣才可以將子路由的內容顯示到父路由組件中指定的位置。

  • PageA.vuePageB.vue組件,App.vue組件中使用了<router-view>標簽,那么PageA.vuePageB.vue組件的內容就會顯示在App.vue組件中的<router-view>標簽所在位置。

  • 現在給PageA.vue組件創建兩個子組件,分別是:PageA1.vuePageA2.vue,并且在router/index.js路由文件中,定義嵌套路由信息。

?

  • 接著,要想正確顯示PageA1.vuePageA2.vue子路由的組件內容,那么就必須在PageA.vue父組件中,使用<router-view>標簽。

1.3、router對象?

1.3.1、options屬性

options屬性可以拿到兩個對象,分別是historyroutes,其中routes對象是當前項目中所有路由信息組成的一個數組,history對象其實就是瀏覽器中的window.history歷史訪問記錄對象。

router對象中有一個options屬性,通過這個options屬性可以拿到兩個對象,分別是historyroutes,其中routes對象是當前項目中所有路由信息組成的一個數組history對象其實就是瀏覽器中的window.history歷史訪問記錄對象

1.3.2、路由跳轉

router對象中提供了幾個路由跳轉的方法,分別是router.push()router.replace()router.go()router.back()router.forward()這五個方法,其中最常用的是router.push()router.replace()

  • router.push()方法作用:跳轉到指定路由地址,不會替換歷史訪問記錄中的當前路由。舉個例子:

    • 假設現在已經訪問過A,B,C三個路由,當前處于C路由位置,接下來要使用router.push()跳轉到D路由,那么此時新的歷史訪問記錄將變成:A,B,C,D三個路由。

    • 因為D路由會追加到原先的歷史記錄里面。

  • router.replace()方法作用:跳轉到指定路由地址,會替換歷史訪問記錄中的當前路由。舉個例子:

    • 假設現在已經訪問過A,B,C三個路由,當前處于C路由位置,接下來要使用router.replace()跳轉到D路由,那么此時新的歷史訪問記錄將變成:A,B,D三個路由。

    • 因為D路由會替換C路由的記錄。

  • router.go(num)方法作用:前進或者后退num個路由,例如:router.go(2)就是前進2個路由。

  • router.back()方法作用:后退1個路由,也就是等價于router.go(-1)的作用。

  • router.forward()方法作用:前進1個路由,也就是等價于router.go(1)的作用。

1.3.3、useRoute方法:VueRouter插件中,提供了一個useRoute方法,通過這個useRoute方法可以獲取到路由參數等信息。在Vue3中要通過下面方式使用useRoute方法,
// 獲取 route 路由
import {useRoute} from "vue-router";
const route = useRoute();

route對象中,具有下面這些屬性:

  • route.name可以獲取到index.js路由配置文件中指定的name屬性值

  • route.meta可以獲取到index.js路由配置文件中指定的meta屬性值,meta是允許用戶自定義的屬性。

?

  • route.query可以獲取到路由傳遞的參數,query參數是顯示在瀏覽器地址欄中的,用戶可以看得見。

  • route.params可以獲取到動態路由傳遞的參數,params參數會動態替換到路由路徑里面。

  • route.path可以獲取當前訪問的路由路徑。

  • route.fullPath可以獲取完整的路由訪問路徑,也就是地址欄中端口之后的所有內容。

  • route.hash可以獲取到地址欄中的hash字符串,也就是地址欄中#號之后的所有內容。

1.3.4、動態路由:VueRouter插件還可以支持動態路由,所謂的動態路由,其實就是路由路徑中,可以動態的替換參數,動態路由需要在路徑中使用【:】冒號定義路由參數。
  • 動態路由的定義格式:
    ?
    {// 動態路由定義格式// 路由路徑/:路由參數1/:路由參數2path: 'B/:id/:name',name:'demo_B',component: () => import('../components/demo02/DemoB.vue')
    },

    動態路由的定義格式:其中路由參數是實際傳遞的參數,需要注意的是,動態路由中的參數必須采用params屬性進行傳遞,一定不能使用query屬性,一定不能使用query屬性,一定不能使用query屬性。

  • 通過<router-link>使用動態路由。
    ?

    <!-- 動態路由 params 中的參數名稱,必須和動態路由中配置的相同,這樣才可以正確接受到參數
    -->
    <router-link :to="{name:'demo_B',params:{id:1,name:'Tom'}}">B</router-link>

  • 通過router.push()方法使用動態路由。
    ?

    // 動態路由訪問
    router.push({name: 'demo_B',params: {id: 1,name: 'Tom'}
    });

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

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

相關文章

【C/C++】勝者樹與敗者樹:多路歸并排序的利器

文章目錄 勝者樹與敗者樹&#xff1a;多路歸并排序的利器1 勝者樹簡介1.1 定義1.2 勝者樹結構與原理1.2.1 構造流程1.2.2 歸并過程 2 敗者樹簡介2.1 背景場景2.2 基本定義2.3 敗者樹結構和原理2.3.1 樹的構造&#xff08;初始建樹&#xff09;2.3.2 查詢和更新 3 勝者樹 vs 敗者…

零基礎設計模式——第二部分:創建型模式 - 原型模式

第二部分&#xff1a;創建型模式 - 5. 原型模式 (Prototype Pattern) 我們已經探討了單例、工廠方法、抽象工廠和生成器模式。現在&#xff0c;我們來看創建型模式的最后一個主要成員——原型模式。這種模式關注的是通過復制現有對象來創建新對象&#xff0c;而不是通過傳統的…

C++(初階)(十九)——紅黑樹

紅黑樹 紅黑樹概念規則實現結點插入變色變色參考代碼&#xff1a; 查找查找參考代碼 遍歷 紅黑樹檢查完整代碼 概念 紅?樹是?棵?叉搜索樹。它的每個結點增加?個存儲位來表示結點的顏?&#xff0c;可以是紅色或者黑色&#xff08;并不會出現第三種顏色&#xff09;。 通過…

Mistral AI 開源最新 Small 模型——Devstral-Small-2505

Devstral 是一款專為軟件工程任務設計的代理型大語言模型&#xff08;LLM&#xff09;&#xff0c;由 Mistral AI 和 All Hands AI 合作開發 &#x1f64c;。Devstral 擅長使用工具探索代碼庫、編輯多個文件以及驅動軟件工程代理。該模型在 SWE-bench 上表現出色&#xff0c;使…

CDGA|一線二線企業數據治理項目目前發展狀況

一線城市與二線城市企業在數據治理項目的發展狀況上存在一定差異&#xff0c;主要體現在目標、資源投入、策略實施以及文化培育等方面。 一線城市企業數據治理項目發展狀況 ?數據治理目標全面系統?&#xff1a; ?數據質量與安全?&#xff1a;一線城市的大型企業通常擁有海量…

Lyra學習筆記1地圖角色加載流程

目錄 1 地圖加載流程1.1 默認Experience的加載1.2 加載角色1.3 加載場景中的幾個傳送點 2 幾個內建類的筆記2.1 UDataAsset2.2 UAssetManager 純個人筆記&#xff0c;有錯誤歡迎指正&#xff0c;學習階段基本看到不會的就寫一寫&#xff0c;最后有時間會梳理整體結構 先看完了官…

SurfaceFlinger及Android應用RenderThread角度觀察Jank丟幀卡頓

SurfaceFlinger及Android應用RenderThread角度觀察Jank丟幀卡頓 CPU、GPU、Display 三個部分&#xff1a;CPU 負責計算幀數據&#xff0c;把計算好的數據交給 GPU&#xff0c;GPU 會對圖形數據進行渲染&#xff0c;渲染好后放到 buffer &#xff08;圖像緩沖區&#xff09;存起…

《牛客》數組中出現次數超過一半的數字

牛客的刷題之路不停歇 ??? 不積跬步無以至千里&#xff0c;不積小流無以成江海 The harder you work,the luckier you will be 題目及示例 題目鏈接 描述 給一個長度為 n 的數組&#xff0c;數組中有一個數字出現的次數超過數組長度的一半&#xff0c;請找出這個數字。 例…

七彩喜康養護理——科技賦能下的全周期健康守護

在當今社會&#xff0c;隨著人們健康意識的不斷提高&#xff0c;護理行業逐漸走向專業化、精細化&#xff0c;而七彩喜智養護理作為一種新興的護理方式&#xff0c;逐漸受到了廣泛的關注和應用。 它不僅僅是針對單一病癥的治療護理&#xff0c;而是一種全面的、全方位的健康管…

【爬蟲】12306自動化購票

上文&#xff1a; 【爬蟲】12306查票-CSDN博客 下面是簡單的自動化進行搶票&#xff0c;只寫到預定票&#xff0c;沒有寫完登陸&#xff0c; 跳出登陸后與上述代碼同理修改即可。 感覺xpath最簡單&#xff0c;復制粘貼&#xff1a; 還有很多寫法&#xff1a; 官網地址&#…

Java設計模式之組合模式:從入門到精通(保姆級教程)

文章目錄 1. 組合模式概述1.1 專業定義1.2 通俗解釋1.3 模式結構2. 組合模式詳細解析2.1 模式優缺點2.2 適用場景3. 組合模式實現詳解3.1 基礎實現3.2 代碼解析4. 組合模式進階應用4.1 透明式 vs 安全式組合模式4.2 組合模式與遞歸4.3 組合模式與迭代器5. 組合模式在實際開發中…

游戲如何應對反編譯工具dnspy

Unity Mono 是 Unity 引擎默認的腳本運行時環境&#xff0c;由跨平臺的開源 .NET 框架實現&#xff0c;它允許開發者使用 C# 等編程語言編寫游戲邏輯&#xff0c;憑借簡單易用的開發環境和高效的腳本編譯速度&#xff0c;得到了眾多游戲的青睞。 在 Mono 模式下&#xff0c;游…

騰訊云證書過期提醒的應對措施,Caddy 自動管理的 Let‘s Encrypt 證書.

用騰訊的免費證書&#xff0c;90天需要換一次。 Caddy 自動管理的 Lets Encrypt 證書. 在網站上按F12然后找到security選項&#xff0c;然后選擇View certifcate 就可以看到證書的有效期。 完全無需操作 你的網站實際使用的是 Caddy 自動管理的 Lets Encrypt 證書&#xff0c;…

[Java實戰]Spring Boot整合Elasticsearch(二十六)

[Java實戰]Spring Boot整合Elasticsearch&#xff08;二十六&#xff09; 摘要&#xff1a;本文通過完整的實戰演示&#xff0c;詳細講解如何在Spring Boot項目中整合Elasticsearch&#xff0c;實現數據的存儲、檢索和復雜查詢功能。包含版本適配方案、Spring Data Elasticsea…

【關聯git本地倉庫,上傳項目到github】

目錄 1.下載git2.綁定用戶3.git本地與遠程倉庫交互4.github項目創建5.上傳本地項目到github6.完結撒花???&#xff01;&#xff01;&#xff01; 1.下載git git下載地址&#xff1a;https://git-scm.com/downloads 下載安裝后創建快捷地址&#xff1a;&#xff08;此處比較…

[Vue]路由基礎使用和路徑傳參

實際項目中不可能就一個頁面&#xff0c;會有很多個頁面。在Vue里面&#xff0c;頁面與頁面之間的跳轉和傳參會使用我們的路由: vue-router 基礎使用 要使用我們需要先給我們的項目添加依賴:vue-router。使用命令下載: npm install vue-router 使用路由會涉及到下面幾個對象:…

軟考-軟件工程開發模型

軟考-軟件工程開發模型 參考視頻&#xff1a; 軟件工程概述&開發模型 &#xff0c;配合視頻理解更清晰&#xff5e; 軟件的生命周期為&#xff1a;需求分析、軟件設計、軟件開發、運行維護直至被淘汰 幾個階段。 軟件工程支持 4 個活動&#xff0c;簡稱 PDCA&#xff0c…

【寫在創作紀念日】基于SpringBoot和PostGIS的各省東西南北四至極點區縣可視化

目錄 前言 一、空間檢索簡介 1、空間表結構 2、四至空間檢索 二、前后端實現 1、后端實現 2、前端集成 三、成果展示 1、東部省份 2、西部省份 3、南部省份 4、北部省份 5、中部省份 四、總結 前言 在當今數字化時代&#xff0c;地理信息數據的分析與可視化對于眾…

智能守護校園“舌尖安全“:AI視頻分析賦能名廚亮灶新時代

引言&#xff1a; 在校園食品安全備受關注的今天&#xff0c;一套融合視頻監控管理平臺與AI視頻分析盒子的智能解決方案正在全國多地學校食堂悄然落地&#xff0c;為傳統的"名廚亮灶"工程注入科技新動能。這套系統不僅實現了后廚操作的"透明化"&#xff0…

【軟件設計師】計算機網絡考點整理

以下是軟件設計師考試中 ??計算機網絡?? 的核心考點總結&#xff0c;幫助您高效備考&#xff1a; ??一、網絡體系結構與協議?? ??OSI七層模型 & TCP/IP四層模型?? 各層功能&#xff08;物理層-數據鏈路層-網絡層-傳輸層-會話層-表示層-應用層&#xff09;對應協…