我有一个简单的React组件,它的输入字段带有一个onChange事件。触发onChange事件,并使用输入字段中的值更新某些组件状态。但是我在控制台记录日志时注意到状态是一个字符。因此,如果我键入“ Hello”,控制台将显示状态为
‘’在H上
HE上的“ H”
HEL上的“ E”
地狱中的“ L”
HELLO上的“ L”
那个怎么样?
this.setState是异步的。这意味着记录的时间控制台无法与更新的时间状态匹配。如果要在状态更改后看到确切的值,则必须执行以下操作
this.setState
this.setState({ 'updated': 'state'}, () => { console.log(this.state.updated); });