@ducor/react
Version:
admin template ui interface
20 lines (19 loc) • 650 B
JavaScript
import { useEffect, useRef } from "react";
/**
* `useInterval` is a custom hook that runs a function at a specified interval.
*
* @see Docs https://ui.ducor.net/hooks/use-interval
*/
var useInterval = function (callback, delay) {
var savedCallback = useRef(callback);
useEffect(function () {
savedCallback.current = callback;
}, [callback]);
useEffect(function () {
if (delay === null)
return;
var intervalId = setInterval(function () { return savedCallback.current(); }, delay);
return function () { return clearInterval(intervalId); };
}, [delay]);
};
export default useInterval;