react-router路由傳參的3中形式
1 使用react-router中的Link標籤進行跳轉
1.0 使用url傳遞參數(刷新之後路由參數不會丟失)
1.1 在這裏你要調到那個頁面,講形參寫在該路由的path後面,具體格式,見下圖
1.2 獲取傳遞過來的參數
2. 使用state傳遞參數【不會在url中顯示具體參數】
這種形式有兩種書寫格式
0. 也是使用Link進行跳轉,但不在Route的path中書寫書寫形參
- 使用js的格式跳轉
2.0 使用state,&使用Link進行路由傳參
不需要寫任何形參
2.1 使用state,&使用JS進行路由傳參
3. 使用query傳遞參數【不會在url中顯示,刷新子頁面之後參數%丟失%】
3.1使用query,&使用Link標籤跳轉攜帶參數(刷新頁面之後參數丟失)
3.2使用query,&使用JS方式跳轉攜帶參數(刷新頁面之後參數丟失)
query 獲取參數的方式和上圖一致
總結:
- 第一種路由傳參,參數在url上邊可以直接看到,當時沒有在history記錄中
- state通常用作普通參數傳遞(推薦)【在history中】
- query可用作支付或其他安全跳轉(推薦)【在history中】