React:用++改变状态

时间:2018-10-30 13:09:09

标签: reactjs

在将SetState与“ ++”(例如this.state.counter ++)一起使用时,我不断收到“请勿突变”警告,而当我将其与“ +1”进行设置时却没有得到。为什么会这样?

1 个答案:

答案 0 :(得分:2)

this.state.counter++表达式使this.state.counter递增并返回递增的值。 this.state.counter + 1表达式仅返回递增的值。 为避免其他冲突,您不应基于this.state设置新状态。请改用以下代码:

this.setState(old => ({counter: old.counter + 1}))

选中https://reactjs.org/docs/react-component.html#setstate