使用react-router从路径确定locationKey

时间:2016-04-15 19:01:39

标签: react-router

说我有这个路线配置:

<Router>
  <Route path="/" component={App}>
    <Route path="about" component={About} />
    <Route path="inbox" component={Inbox}>
      <Route path="messages/:id" component={Message} />
    </Route>
  </Route>
</Router>

并说当前的网址是:/ inbox / messages / 6

让我们说每个组件的locationKeys如下:

/ = "loc1" (as accessed in App component as this.props.location.key)
/inbox = "loc2"
/messages/:id = "loc3"

无论如何,我可以让react-router给我一个给定路径路径的位置键吗?例如,我想传入“messages /:id”并返回“loc3”

或者,无论如何我可以获得对当前在该路径上呈现的反应组件的引用吗?即如果我传入“messages /:id”,我会返回当前显示消息ID为6的消息实例?

1 个答案:

答案 0 :(得分:1)

如果您转到/messages/123然后转到/inbox然后转到/messages/123,则第二次访问该消息的密钥会有所不同,所以,不会。

关键通常不是相关的,你需要location.state

要获取组件,您就是组件,因此thisthis.props.children