我想通过使用 foreach 循环来更改此状态对象的值。现在当我使用 map func 它工作正常。但是当我使用 foreach 循环时出现错误。 状态对象是
state = {
counters: [
{ id: 1, value: 4 },
{ id: 2, value: 0 },
{ id: 3, value: 0 },
{ id: 4, value: 0 },
],
};
handleReset = () => {
var counters = this.state.counters.forEach((c) => {
c.value = 0;
});
this.setState({ counters });
};
答案 0 :(得分:0)
方法 forEach 变异原始数组,而 map 则从原始数组生成新的变异数组。在您的情况下,地图是正确的方法。你不能直接用 forEach 改变状态。