获取“类型错误:无法读取未定义的属性‘地图’”

时间:2021-07-08 17:27:40

标签: reactjs

我想通过使用 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 });
  };

1 个答案:

答案 0 :(得分:0)

方法 forEach 变异原始数组,而 map 则从原始数组生成新的变异数组。在您的情况下,地图是正确的方法。你不能直接用 forEach 改变状态。