使用获取路由参数:react-router-dom v6版本的同学请注意

来源:6-6 【路由搭建】withRouter 与 useRouter

莜紫兮

2021-11-17

阿莱克斯老师使用的withRouter已经在react-router-dom v6版本中废弃,取而代之的是useNavigate

import { useNavigate } from "react-router-dom";
let navigate = useNavigate();
function navigateToDetail(id){
	navigate(`detail/${id}`)
}

在detail页面我们需要使用useParams接收路由params参数

import {useParams} from "react-router-dom";
const {id} = useParams();

如果传递的是search参数(例如:detail?id=1&name=李四)需要使用useSearchParams获取search参数

import {useSearchParams} from "react-router-dom"
const [searchParams] = useSearchParams();
const id = searchParams.get("id");

如果传递的是state参数需要使用useLocation获取参数

import {useLocation} from "react-router-dom";
 const location = useLocation();
 const {id} = location.state;

不明白的同学请阅读React-router-dom 最新版文档。
还不明白的同学请仔细阅读React-router-dom 最新版文档。
再不明白的同学请熟读并背诵React-router-dom 最新版文档。

写回答

1回答

阿莱克斯刘

2021-11-18

感谢😊,我会尽快完成课程更新

0
0

React 18 系统精讲 结合TS打造旅游电商平台

React 18 精讲 + 结合 TS 实战 + 热门业务开发,获取必备技能

2042 学习 · 1035 问题

查看课程