如何使用setState()使用对象数组设置状态?

时间:2019-07-18 18:27:45

标签: javascript reactjs setstate

我想用对象数组更新状态,但是setState()不允许这样做。我应该如何更新它而不必走Redux路径。

state = {
    list: []
}

componentDidMount() {
    let list = [{a: 1, b: 1}, {a: 2, b: 2}]
    if (this.props.value) {
        this.setState({
            list
        });
    }
}

编辑:this.props.value是一个布尔值。我已经登录并确认它是true

2 个答案:

答案 0 :(得分:0)

如果您的代码没有错,只是条件b正在对cd进行验证

答案 1 :(得分:-2)

在setState内部尝试以下 list:list ,如下所示:

state = {
    list: []
}

componentDidMount() {
    let list = [{a: 1, b: 1}, {a: 2, b: 2}]
    if (this.props.value) {
        this.setState({
            list:list
        });
    }
}