在reactjs
的setState
文档:
setState()不会立即改变this.state,但会创建挂起状态转换。调用此方法后访问this.state可能会返回现有值。
第二个(可选)参数是一个回调函数,它将在setState完成并重新呈现组件后执行。
如果我只是想更新我的状态,我创建一个什么都不做的回调怎么办?
在写入时,setState()不会立即改变this.state,但会创建挂起状态转换。因为它以异步方式工作。因此,如果要在状态变量上设置状态后立即执行操作,则回调将非常有用。
例如
setState(
{ name: "Hello World" },
() => console.log(this.state)
);
回调是可选的,所以你可以做this.setState({ key: value });
。