我的状态变得充满,又变得空虚? React-Redux

时间:2019-03-04 17:11:39

标签: reactjs redux react-redux

您好,我在这里遇到一个小问题,我正在尝试在组件中渲染数据,这是我的组件:

// Store data in the global state
const mapStateToProps = ({ moduleState }) => ({
    operationsContrat: moduleState.contrat.operationsContrat
});

// execute the action
const mapDispatchToProps = dispatch => {
    return {
        getOperationContrat: (...args) => 
          dispatch(getOperationContrat(...args))
    };
};

class Operations extends Component {

state = {
    data: []
};

// Nod used
componentDidMount() {
    if (this.props.operationsContrat.data.length === 0) {
        this.props.getOperationContrat(4000003);
    }
}

componentWillReceiveProps(nextProps) {
    if (this.props.operationsContrat.loading && !nextProps.operationsContrat.loading) {
        this.setState({ data: nextProps.operationsContrat.data });
    }
}
render() {
    console.log("operations");
    console.log(this.state.data);
    return (
        <Fragment />
    );
}
}

所以我得到了数据,然后我的state.data再次为空,这引起了我一个问题,因为没有数据显示,这就是我在控制台中看到的内容: enter image description here

所以发生的是,上次执行渲染方法时没有执行我的componentWillReceiveComponent,我知道发生了什么,但我不知道如何解决该问题。

如果您需要它以了解更多问题,我可以提供任何所需的代码。

任何帮助将不胜感激。

0 个答案:

没有答案