利用vue-router跳轉的幾種方式

?1 <router-link>
2 this.$router.push

? ?跳轉到指定路徑,并將跳轉頁面壓入history棧中,也就是添加了一個頁面記錄。
3 this.$router.replace

? ?跳轉到指定路徑,將history棧中的當前頁面替換為跳轉到的頁面。
4 this.$router.go(n)

? ?在histroy棧中向前或者向后跳轉n個頁面,n可為正整數或負整數。


<router-link to>

1.不帶參數

<router-link :to="/home"></router-link><router-link :to="{name:'home'}"></router-link><router-link :to="{path:'/home'}"></router-link>

直接寫路徑或者根據vue-router的配置文件(index.js),構建一個對象使用name屬性或者path屬性都行, 建議用name。

2.路徑參數(pathvariable)

<router-link to = "/跳轉路徑/傳入的參數"></router-link>

例如:

<router-link :to="`/adddoc/${record.id}`">

to的屬性值是`/adddoc/${record.id}`表達式的計算結果

  • 路徑樣式 ????????????????????????/跳轉路徑/傳入的參數??/ebook/1
  • 路由index.js配置path? ? ?{path:/ebook/:id,name:ebook,component:Ebook}
  • 取參數? ? ? ? ? ? ? ? ? ? ? ? ? ? HTML: $route.params.id (用取值表達式寫在templat中)? ? ? ?
    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Script: this.$route.params.id (寫在JS代碼中)

3.params傳遞參數(url后面會顯示/value,路徑傳參的另一種寫法)
如果說路徑傳參是純手寫,那么params傳參就是由vue-router幫助構建的路徑傳參

<router-link :to="{name:'home', params: {id:10001}}"></router-link>
<router-link :to="{name:'adddoc', params: {eid:`${record.id}`}}"></router-link>

  • 路徑樣式 ????????/home/10001? ,/adddoc/1
  • 路由index.js配置path? ? path:"/home/:id" 或者 path: "/adddoc:eid"??(省略了name和component)路由index.js如果不配置path ,第一次可請求,刷新頁面id會消失;配置path,刷新頁面id會保留。使用params必須要注意的是,params屬性中,傳遞參數使用的參數名稱必須與index.js中path配置的名稱對應上path配置時使用:id,傳遞參數時就要用params:{id:xxx},配置時使用:eid,傳遞參數時就要用params:{eid:xxx}
  • 取參? ? ? ? ? ? ? HTML: $route.params.id??????
    ? ? ? ? ? ? ? ? ? ? ?Script:? this.$route.params.id

4.query傳遞參數(類似get,url后面會顯示 ?name=value)

?<router-link :to="{name:'home', query: {id:10001}}"></router-link><router-link :to="{name:'adddoc', query: {eid:`${record.id}`}}"></router-link>
  • ?路徑樣式 ????????/home?=10001? ,/adddoc?eid=1
  • ?路由index.js不用做path的額外配置(因為query參數根本就不是路徑的一部分)
  • ?取參? ? ? ? ? ? ? ?HTML取出 $route.query.id? ,? $route.query.eid
    ? ? ? ? ? ? ? ? ? ? ? ?Script取出? this.$route.query.id? ,this.$route.query.eid

push跳轉

整體思路與<router-link to>是一樣的

1.?不傳參

?this.$router.push('/adddoc');this.$router.push({name:'adddoc'});this.$router.push({path:'/adddoc'});

2. 路徑傳參

?this.$router.push('/adddoc/21');
  • ?需要在router index.js中進行路徑配置,配置方式與<router-link to>的路徑傳參方式一樣? ?path:/adddoc:eid (省略了name和component)
  • ?取參的方式與<router-link to>的路徑傳參方式一樣
    ?HTML: $route.params.eid
    ?Script: this.$route.params.eid

3. params傳參(路徑傳參的另一種寫法)

?this.$router.push({name:'adddoc',params: {eid:'24'}})

push函數中,params只能與name配合使用。使用path會導致白屏(但是沒有異常)

  • ?需要在router index.js中進行路徑配置,配置方式與<router-link to>的路徑傳參方式一樣
    ?path:/adddoc:eid name:adddoc component AddDoc
  • ?取參的方式與<router-link to>的params取參方式一樣
    ?HTML: $route.params.eid
    ?Script: this.$route.params.eid

4. query傳參

this.$router.push({name:'adddoc',query: {eid:'24'}})
this.$router.push({path:'/adddoc',query: {eid:'24'}})

與<router-link to>的query傳參方式一樣不需要path配置
取參的方式與<router-link to>的params取參方式一樣
HTML: $route.query.eid
script: this.$route.query.eid


replace跳轉

replace跳轉的寫法和含義與push一模一樣(不再贅述)
replace與push的區別在于對histroy棧的操作不一樣,push是壓入棧新的頁面,replace則是用新頁面替代棧中當前的頁面。


go跳轉


this.$router.go(-1);??// 在瀏覽器記錄中后退一步記錄,等同于 history.back()
this.$router.go(1);???// 在瀏覽器記錄中前進一步,等同于 history.forward()


?

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

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

相關文章

數據生成 | MATLAB實現WGAN生成對抗網絡數據生成

數據生成 | MATLAB實現WGAN生成對抗網絡數據生成 目錄 數據生成 | MATLAB實現WGAN生成對抗網絡數據生成生成效果基本描述程序設計參考資料 生成效果 基本描述 1.WGAN生成對抗網絡&#xff0c;數據生成&#xff0c;樣本生成程序&#xff0c;MATLAB程序&#xff1b; 2.適用于MATL…

從public static void main(String[] args)看如何構造數據

java語言中public static void main(String[] args)里面的ages有什么作用&#xff1f; 在Java語言中&#xff0c;public static void main(String[] args) 是一個特殊的方法&#xff0c;它是Java程序的入口點。當你運行一個Java程序時&#xff0c;程序會從這個方法開始執行。這…

【游戲評測】河洛群俠傳一周目玩后感

總游戲時長接近100小時&#xff0c;剛好一個月。 這兩天費了點勁做了些成就&#xff0c;刷了等級&#xff0c;把最終決戰做了。 總體感覺還是不錯的。游戲是開放世界3D游戲&#xff0c;Unity引擎&#xff0c;瑕疵很多&#xff0c;但勝在劇情扎實&#xff0c;天賦系統、秘籍功法…

kubernetes(二)

文章目錄 1. kubernetes常用資源1.1 deployment資源1.2 deployment升級和回滾1.3 tomcat連接mysql1.4 wordpress 2. kubernetes的附加組件2.1 kubernetes集群配置dns服務2.2 kubernetes的dns配置文件2.3 namespace命名空間2.4 kubernetes健康檢查2.4.1 健康檢查livenessprobo2.…

代碼隨想錄二刷day01

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、704. 二分查找二、35. 搜索插入位置三、34. 在排序數組中查找元素的第一個和最后一個位置四、69. x 的平方根五、367. 有效的完全平方數六、27. 移除元素七…

JDBC Vertica Source Connector 使用文檔

支持以下引擎 Spark Flink SeaTunnel Zeta 關鍵特性 批處理 精確一次性處理 列投影 并行處理 支持用戶自定義拆分 支持查詢 SQL 并實現投影效果 描述 通過 JDBC 讀取外部數據源數據。 支持的數據源信息 DatasourceSupported versionsDriverUrlMavenVerticaDifferent depen…

40、端口號和套接字

經過了上節的學習之后&#xff0c;接下來我們再要了解的一個知識就是端口號和套接字。尤其端口號&#xff0c;是傳輸層中最為重要的基礎概念之一&#xff0c;我們在以后的學習中會經常提及到端口號。 端口號 曾經在學習TCP/IP模型的時候&#xff0c;我們曾學過“SAP”即服務訪…

設計HTML5表格

在網頁設計中&#xff0c;表格主要用于顯示包含行、列結構的二維數據&#xff0c;如財務表格、調查數據、日歷表、時刻表、節目表等。在大多數情況下&#xff0c;這類信息都由列標題或行標題及數據構成。本章將詳細介紹表格在網頁設計中的應用&#xff0c;包括設計符合標準化的…

【第七講---視覺里程計1】

視覺里程計就是通過對圖像進行特征提取與匹配得到兩幀之間的位姿&#xff0c;并進行估計相機運動。 經典SLAM中以相機位姿-路標來描述SLAM過程 特征提取與匹配 路標是三維空間中固定不變的點&#xff0c;可以在特定位姿下觀測到在視覺SLAM中&#xff0c;可利用圖像特征點作為…

2023 CCF BDCI 數字安全公開賽正式開啟報名

2023 CCF BDCI 數字安全公開賽重磅來襲&#xff01; 全新的賽道場景 豐厚的賽事獎勵 精彩的周邊活動 數字安全守護人的狂歡盛宴 快來報名參加吧 大賽背景 伴隨著數智化的持續加深&#xff0c;網絡安全、數據安全風險遍布于所有場景之中&#xff0c;包括工業生產、能源、交…

2019年9月全國計算機等級考試真題(C語言二級)

2019年9月全國計算機等級考試真題&#xff08;C語言二級&#xff09; 第1題 1、“商品”與“顧客”兩個實體集之間的聯系一般是 A. 一對一 B. 一對多 C. 多對一 D. 多對多 正確答案&#xff1a;D 第2題 定義學生選修課程的關系模式&#xff1a;SC&#xff08;S#&#xff0c…

tensorboard報錯:AttributeError: module ‘distutils‘ has no attribute ‘version‘

1、報錯問題 環境&#xff1a;pytorch 1.10 tensorboard報錯&#xff1a;AttributeError: module ‘distutils‘ has no attribute ‘version‘ 2、解決 pip uninstall setuptools pip install setuptools59.5.0

運營商三要素 API:構建安全高效的身份驗證系統

當今數字化的世界中&#xff0c;身份驗證是各行各業中至關重要的一環。為了保護用戶的隱私和數據安全&#xff0c;企業需要尋求一種既安全可靠又高效便捷的身份驗證方式。運營商三要素 API 應運而生&#xff0c;為構建安全高效的身份驗證系統提供了有力的解決方案。 運營商三要…

R語言 列表中嵌套列名一致的多個數據框如何整合為一個數據框

在批量建模后容易得到list&#xff0c;list中的每個元素都是單個的tibble 或者 dataframe&#xff0c;如何將這些數據整合為一張表呢&#xff1f; 載入R包 library(broom) library(tidyverse) 模擬數據 models <- txhousing %>% group_by(city) %>% do(modlm(lo…

-Webkit-Box 在 Safari 中出現的兼容性問題

一、問題背景&#xff1a; UI要求要實現這樣的效果&#xff0c;使用 display:-webket-box在chrome瀏覽器下完美解決 但是馬上啪啪打臉&#xff0c;在safari瀏覽器下顯示空白 &#xff0c;不能不說瀏覽器之間的兼容性簡直就是天坑 二、解決辦法 通過瀏覽器調試發現原本float的…

使用Pillow對圖像進行變換

使用Pillow對圖像進行變換 from PIL import Image, ImageEnhance# 原圖 image Image.open("1.jpg") image.show()# 鏡像 mirrored_image image.transpose(Image.FLIP_LEFT_RIGHT) mirrored_image.show() mirrored_image.save(mirror_image.jpg)# 旋轉 rotated_imag…

VK36W1D浴缸,潔具高靈敏度電容式單點液體水位檢測觸摸芯片資料介紹

產品品牌&#xff1a;永嘉微電/VINKA 產品型號&#xff1a;VK36W1D 封裝形式&#xff1a;SOT23-6L 產品年份&#xff1a;新年份 &#xff08;C21-163&#xff09; 產品特點&#xff1a;VK36W1D具有1個觸摸檢測通道&#xff0c;可用來檢測水從無到有和水從有到無的動作。該…

一個模型解決所有類別的異常檢測

文章目錄 一、內容說明二、相關鏈接三、概述四、摘要1、現有方法存在的問題2、方案3、效果 五、作者的實驗六、如何訓練自己的數據1、數據準備2、修改配置文件3、代碼優化修改4、模型訓練與測試 七、結束 一、內容說明 在我接觸的缺陷檢測項目中&#xff0c;檢測缺陷有兩種方法…

網絡通信基礎

1.網絡結構模式&#xff08;C/S和B/S&#xff09; (1)C/S結構模式 服務器 - 客戶機&#xff0c;即 Client - Server&#xff08;C/S&#xff09;結構。 優點&#xff1a; 能充分發揮客戶端 PC 的處理能力&#xff0c;很多工作可以在客戶端處理后再提交給服務器&#xff…

02 qt基本控件及信號和槽

一 QString類 功能:顯示一個字符串內容 主要接口函數 構造函數: QString(const char *str)QString(const QString &other)賦值運算符重載: QString &operator=(const QString &other)功能函數: 1&