我正将应用程序状态的一部分从存储移动到URL。在选择器中访问反应路由器状态
我目前使用REDX来管理我的应用程序的状态以及reselect来创建选择器。选择器从redux存储中的状态计算派生值(原则上,这是它们唯一的输入)。
现在,部分状态将包含在URL中,因此我不知道如何阅读它。
我已经看过react-router-redux,乍看之下可能会出现是解决方案(事实上,我可以得到我想用state.routing.locationBeforeTransitions.query
值),但这似乎并没有要做到这一点的正道,因为在他们的文档中提到:
您不应直接从Redux存储区读取位置状态。
是否有另一种方式可以访问我的位置状态,或者我应该忽略此警告并在选择器中使用它?
您是否需要从mapStateToProps访问路由器的参数? –
@Utro从那里调用选择器,但想法是只传递选择器一个参数,即状态对象。我想我可以添加我需要从路由器到状态对象使用ownProps ... –
有办法:1)在mapStateToProps中geting ownProps.params 2)在组件中:传递'this.props.params.someparam'到action 3)使用'redux-router'来保持路由器的状态。 –