UNPKG

@ozen-ui/kit

Version:

React component library

21 lines (20 loc) 744 B
import { useEffect, useRef } from 'react'; export function useInterval( /** Функция обратного вызова которая будет срабатывать по заданному интервалу */ callback, /** Интервал времени в миллисекундах */ interval) { var savedCallback = useRef(callback); useEffect(function () { savedCallback.current = callback; }, [callback]); useEffect(function () { var intervalId; if (interval || interval === 0) { intervalId = setInterval(function () { return savedCallback.current(); }, interval); } return function () { clearInterval(intervalId); }; }, [interval]); }