说我有这个路线配置:
<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的消息实例?
答案 0 :(得分:1)
如果您转到/messages/123
然后转到/inbox
然后转到/messages/123
,则第二次访问该消息的密钥会有所不同,所以,不会。
关键通常不是相关的,你需要location.state
。
要获取组件,您就是组件,因此this
和this.props.children
。