实现一个 useTimeout Hook,该 Hook 在指定的延迟后调用回调函数。
请注意,由于初始调用,Hook 可以使用不同的值再次调用:
useTimeout 的主要好处是,如果组件在计时器过期之前卸载,则不必手动清除调用 clearTimeout()。
export default function Component() {const [loading, setLoading] = useState(true);useTimeout(() => setLoading(false), 1000);return (<div><p>{loading ? 'Loading' : 'Ready'}</p></div>);}
callback: () => void:在指定的延迟后要调用的函数delay: number | null:在调用回调函数之前的延迟时间(以毫秒为单位)。如果为 null,则清除超时无。