阿莱克斯老师使用的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 最新版文档。
React18 精讲 + 结合 TS 实战 + 热门业务开发,获取必备技能
了解课程