【发布时间】:2020-05-06 17:40:25
【问题描述】:
考虑简单的状态钩子:
const [count, setCount] = React.useState(0);
我想增加或减少计数。基本上做hooks docs中显示的同样的事情。
但作为旧的this.setState 函数的已知fact:
因为 this.props 和 this.state 可能是异步更新的,所以你 不应依赖它们的值来计算下一个状态。
根据旧状态更新状态的正确方法是:
this.setState((state) => ({
counter: state.counter + 1
}));
同样的事情也适用于setCount吗?
或者我可以确定count 始终是最新的?
【问题讨论】:
-
setCount 也可以接受回调.. ->
setCount(prevCount => prevCount +1)
标签: javascript reactjs react-hooks