本文介绍了如何在班级中从REACTION-RUTER-DOMV6获取参数值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用的是REACT-ROUTER-DOM V6,不知道如何获取参数值
例如:http://localhost:3000/user/:id
我想要:id
有人使用挂钩useParams
获取,但我正在使用类,所以无法使用挂钩。
推荐答案
库提供的HOC WITH路由器已在Reaction路由器V6中弃用。如果您需要使用V6并使用基于类的Reaction组件,那么您将需要编写自己的HOC来包装V6 Use*钩子。
例如:
export function withRouter( Child ) {
return ( props ) => {
const location = useLocation();
const navigate = useNavigate();
return <Child { ...props } navigate={ navigate } location={ location } />;
}
}
如果您有大量需要迁移到V6的代码库,但尚未将所有基于类的组件迁移到函数性组件中,则此功能非常有用。
这是基于开发团队在本期Github中提出的建议:https://github.com/ReactTraining/react-router/issues/7256t
这篇关于如何在班级中从REACTION-RUTER-DOMV6获取参数值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!