import React from 'react'; export function useUpdateEffect( effect: React.EffectCallback, deps: React.DependencyList ) { const isMounted = React.useRef(false); const effectRef = React.useRef(effect); effectRef.current = effect; React.useEffect(() => { if (!isMounted.current) { isMounted.current = true; } else { return effectRef.current(); } // eslint-disable-next-line react-hooks/exhaustive-deps }, deps); }