React.js如何从功能组件访问路由器链接URL中的参数?

时间:2019-02-06 22:03:23

标签: javascript reactjs react-router

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

  

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

有没有办法从功能组件而不是类组件访问相同的参数?

1 个答案:

答案 0 :(得分:1)

您可以使用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);