我可以使用以下命令从路由器URL访问参数:


  ${this.props.match.params.id}


有没有一种方法可以从功能组件而不是类组件访问相同的参数?

最佳答案

您可以使用withRouter hoc provided by react-router


  您可以通过withRouter高阶组件访问历史对象的属性和最接近的匹配项。每当呈现时,withRouter都会将更新的匹配,位置和历史道具传递给包装的组件。


import { withRouter } from 'react-router';

const Component = props => ...

// now you can access props.history|match|location
const ComponentWithRouteProps = withRouter(Component);

09-17 17:52