UNPKG

react-transition-preset

Version:

Lightweight, zero-dependency transition component for React with common preset transition

25 lines (22 loc) 554 B
import { useRef } from 'react'; import { useIsomorphicLayoutEffect } from './use-isomorphic-layout-effect.js'; // src/hooks/use-did-update.ts function useDidUpdate(fn, options) { const { initialMounted, deps } = options; const mounted = useRef(initialMounted); useIsomorphicLayoutEffect( () => () => { mounted.current = initialMounted; }, [] ); useIsomorphicLayoutEffect(() => { if (mounted.current) { fn(); return; } mounted.current = true; return void 0; }, deps); } export { useDidUpdate };