我是个新手,在理解 useState Hook 时遇到问题 - 或者更具体地说是previousState的方面。
一个普通的 useState Hook,可能也是最常见的例子,看起来像这样:
import React, { useState} from 'react';
export default function CounterHooks({ initialCount }){
const [count, setCount] = useState(initialCount);
return (
<div>
<button onClick={() => setCount(count -1)}>-</button>
<span>{count}</span>
<button onClick={() => setCount(count + 1)}>+</button>
</div>
)
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,我的理解如下:
到目前为止一切顺利,我认为... ;)
有时我会看到与 prevState (prevCount) 相同的反例,但我不明白:
<button onClick={() => setCount(prevCount => prevCount -1)}>-</button>
Run Code Online (Sandbox Code Playgroud)
这里会发生什么?这部分我不明白。到目前为止我的想法: