react路由傳參的方式有好幾種,接下來大概講一下。
向路由組件傳輸params參數
-
首先需要在路由組件傳遞oarams參數,如下:

-
接下來需要在route中聲明接收params參數,如下:

-
然后在路由組件中接收params參數:

接着看實際變化和后台打印結果:
URL地址的變化:
props中接收的數據:
於是我們就可以拿到數據進行操作了。
向路由組件傳輸search參數
跟傳輸params參數一樣
-
需要在路由組件上傳輸search參數:

-
search參數不需要聲明

-
在路由組件中接收search參數
在這里需要注意,因為傳輸過來的search參數是字符串類型,如下:
所以我們需要將字符串形式轉換為key:value形式的對象,這時可以使用react中的一個庫,
,它的使用方法與JSON類似,一個是qs.stringify(),能將對象轉換為key,value形式的字符串,中間用&連接。qs.parse()能將key,value形式並且由&連接的字符串轉換為對象形式。於是我們可以這樣接收search參數

完工!
URL地址的變化:
向路由組件傳輸state參數
- 向路由組件中傳輸state參數:

2.state參數也不需要聲明參數
3.在路由組件中接收state參數:

看看URL變化和后台打印:
URL變化;
發現沒有,URL地址上面沒有顯示,表明會更安全一點。
后台打印:

歐了!!
