在反应中使用setState将预定义对象推入数组

时间:2018-08-29 15:59:24

标签: javascript arrays reactjs immutability setstate

如何使用传播算子/ ES6实现此目标?

我想遍历数据并用对象数组填充状态,其中对象包含两个键/值对。我希望它像...

this.state = {
data: [ {indexNumber: 1, show: false}, {indexNumber: 2, show: false}, {indexNumber: 3, show: false} ]

我的[mutated]版本;

this.state = { data: []}

data.map((element, index) => {
    this.state.data.push({ indexNumber: index, show: false}] })
});

1 个答案:

答案 0 :(得分:1)

您不能修改状态对象。您将必须调用setState并使用新值:

this.setState({data: [...this.state.data, {indexNumber: index, show: false}]})