Files
bigcapital/packages/webapp/src/hooks/utils/useUpdateEffect.tsx
2023-02-03 01:02:31 +02:00

21 lines
526 B
TypeScript

// @ts-nocheck
import { useRef, useEffect } from 'react';
/**
* A custom useEffect hook that only triggers on updates, not on initial mount
* Idea stolen from: https://stackoverflow.com/a/55075818/1526448
* @param {Function} effect
* @param {Array<any>} dependencies
*/
export function useUpdateEffect(effect, dependencies = []) {
const isInitialMount = useRef(true);
useEffect(() => {
if (isInitialMount.current) {
isInitialMount.current = false;
} else {
effect();
}
}, dependencies);
}