import { DependencyList, EffectCallback, useEffect, useRef } from 'react'; /** * The useUpdateEffect function is a custom hook that behaves like useEffect, but only runs on updates and not on initial mount. * It takes in an effect function and an optional dependency list as parameters. * It returns nothing. */ const useUpdateEffect = (effect: EffectCallback, deps?: DependencyList) => { const isInitialMount = useRef(true); useEffect(() => { if (isInitialMount.current) { isInitialMount.current = false; } return effect(); }, deps); }; export default useUpdateEffect;