如何将prop值分配给两个状态的反应

时间:2017-08-24 11:39:06

标签: reactjs react-redux

我搜索过这段文字但没有修复我的情况。我的条件是我有一个prop值我需要将此值设置为2状态变量。一个是直接赋值,一个是间接的。现在由于设置状态或未知原因的异步性质,然后设置该值被渲染的子项。现在我应该如何控制这种行为? 这是我的componentWillReceiveprops孩子

componentWillReceiveProps(nextProps) {
    let lastManualFlag =[...this.state.lastManualFlag];
    console.log('before',lastManualFlag,nextProps.groupBy.length);
    for(var i=0;i<nextProps.groupBy.length;i++){
      lastManualFlag[i]=false;
    }
    console.log("after",lastManualFlag)
    this.setState({lasManualProg:lastManualFlag});
    this.setState({ groupBy: nextProps.groupBy});

  }

这是我的渲染方法

render() {
    console.log('this.state',this.state);
    if (!this.props.groupBy) return null;

当我看到控制台时,我的lastManualFlag仍然是0号阵列

1 个答案:

答案 0 :(得分:0)

您有两次调用设置状态

如何在一次通话中这样做:

 this.setState({...state,lastManualProg:lastManualFlag,groupBy: nextProps.groupBy});