import {useRef, useEffect} from 'react'; /* React hook for setInterval */ export function useInterval(callback, delay) { const savedCallback = useRef(); useEffect(() => { savedCallback.current = callback; }); useEffect(() => { function tick() { savedCallback.current(); } if(delay > -1) { let id = setInterval(tick, delay); return () => clearInterval(id); } }, [delay]); } export function usePrevious(value) { const ref = useRef(); useEffect(() => { ref.current = value; }); return ref.current; }