使用react-router-redux,非路由表示组件应该如何获取位置?

时间:2016-06-18 14:54:05

标签: reactjs redux react-router-redux

是否有一种从非路由组件访问该位置的好方法,其中MapStateToProp的{​​{1}}未填充该位置?就我而言,我需要从路由组件向下几层的位置;避免大量分层参数传递是我们使用Redux的部分原因,因此我不倾向于将位置从路由组件向下传递到所有中间层。我最终直接在ownProps中使用了routing商店(在文档中警告过),这是最糟糕的选择。

该场景是由父路线制定一组常见的“框架”组件,并且需要根据上下文稍微改变。

2 个答案:

答案 0 :(得分:2)

react-router的v3.0.0中,您可以使用withRouter来实现此目的。 现在,您应该将package.json更新为指向3.0.0-alpha.1

来自@gaeron的视频:https://egghead.io/lessons/javascript-redux-using-withrouter-to-inject-the-params-into-connected-components

答案 1 :(得分:0)

此外,解决方法是使用here中的context,以便您可以直接在所需组件中指定它而不作为属性传递