猿问

问一个react更新State的问题?

读react官网:
状态更新可能是动态的

// Wrong

this.setState({

  counter: this.state.counter + this.props.increment,

});

官网说这种写法是错误的


// Correct

this.setState((prevState, props) => ({

  counter: prevState.counter + props.increment

}));

这种写法是正确的


我实在搞不懂为什么第一个是错误的,第二种写法是正确的,哪位大神能帮忙解释一下?在哪种需求场景下,会出现上述的情况,最好能写点代码解释下,多谢,大神们指导。


慕码人8056858
浏览 673回答 0
0回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答