ReactJS post 增量在 setState 中不起作用

ReactJS post increment does not work in setState

在使用 ReactJS setState 方法更新状态时,我观察到 post 增量运算符不工作(也没有收到任何错误)所以我不得不使用 + 1 来代替。知道为什么会出现这种行为,因为我是 React 的新手并且得知这一点感到震惊。

这是我的代码: 这没有用:

this.setState((prevState) => ({
      left: prevState.left++
}));

这有效:

this.setState((prevState) => ({
      left: prevState.left + 1
}));

这是 javascript,您正在将 prevState 分配给 prevState 值:

a = 0; 
a = a++;
a == 0 // true
a++
a == 0 // false

x++ 首先表达式 returns x 的值然后递增它

this.setState((prevState) => ({
  left: ++prevState.left
}));

应该给出预期的结果