根据redux中的先前状态更改状态

时间:2018-04-15 15:42:59

标签: redux

我正在开发一个React-Redux应用程序。 我有一个要求,我需要根据前一个状态的值更改状态。

我尝试使用this.props将之前的状态传递给我的动作但是我在动作中收到的不是预期的值。 因此,使用this.props将前一个状态传递给action并在reducer中进行比较决策还是应该注意其他一些比较逻辑呢?

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果我正确理解了这个问题,你应该使用生命周期方法,特别是ComponentWillReceiveProps。在此处阅读有关它和其他人的更多信息:http://busypeoples.github.io/post/react-component-lifecycle/

你可以使用:

ComponentWillReceiveProps(nextProps) {
    if(this.props.yourProp === desiredValue) doSomething; 
}

此外,您可以比较this.props.yourPropName(这是道具的当前状态)和nextProps.yourPropName即将到来的道具状态。这里的Redux是无关紧要的,因为这是根据来自Redux或标准父组件的传入道具,天气变化的常规方式。