UNPKG

opendash

Version:

open.DASH data visualization framework

23 lines (18 loc) 485 B
import { useRef, useEffect } from "react"; export function useInterval(callback: () => void, timeout: number) { const callbackRef = useRef(null); useEffect(() => { callbackRef.current = callback; }); useEffect(() => { function intervalCallback() { if (callbackRef.current) { callbackRef.current(); } } if (timeout) { const id = setInterval(intervalCallback, timeout); return () => clearInterval(id); } }, [timeout]); }