我是一个初级前端开发人员我对
和 的区别有点困惑- "上一页">
- "prevstate">
- "prevState">
useState钩子。我发现它们可能都引用了之前的状态,我创建了一个反例来测试它。
codesandbox: https://codesandbox.io/s/react-counter-8snzou?file=/src/App.js
谁能给我解释一下这两者的区别或者如果没有区别,为什么会有三种prevState
?我希望有人能给我一个很好的解释prevState在useState钩子。谢谢你提供的任何帮助。
它们都是一样的。setState(setCount)函数需要一个函数作为参数。
setState的基本工作方式如下
const setState = (func) => {
let state = ... // currentState
state = func(state); // Modefy current state
}
因此,将状态的值更新为调用useState函数时定义的函数返回的值。在您的例子中,您只是通过一次又一次地调用useState来重复同样的事情。