我在setState下面调用console.log但它显示我的空白数组甚至状态已被更改。
let text = reminderText;
let data = [...this.state.reminderText]
data.push(text);
this.setState({reminderText:data})
console.log(this.state.reminderText);
答案 0 :(得分:1)
请注意,setState()
为asynchronous。这意味着,当执行控制台日志时,状态尚未更新。
如果要打印更新后的状态,请使用如下所示的回调函数。
this.setState(
{reminderText:data},
() => console.log(this.state.reminderText)
)
React将在异步状态更新完成后立即调用回调函数。