我目前正试图在一个超时函数中获取最新的更新。这意味着我想让 c
更新为 1
而不必使用类似于 useRef
钩子。
const [c, s] = useState<number>(0)
const f = () => {
s(1)
setTimeout(() => console.log(c), 600)
}
return (
<div
style={{ width: '100%', height: '100%', backgroundColor: 'black' }}
onMouseEnter={f}
>
test
</div>
)
没有参考资料,你可以试试 useEffect
钩。
const [c, setC] = useState < number > 0;
useEffect(() => {
setTimeout(() => {
console.log(c);
}, 600);
}, [c]);
const f = () => {
setC(1);
};
return <div onMouseEnter={f}>test</div>;