Skip to content

usePrevious

React hook to keep previous value

React
usePrevious.tsx
import {useRef, useEffect} from 'react';
import type {MutableRefObject} from 'react';
 
export function usePrevious<T>(
  value: T
): MutableRefObject<T | undefined>['current'] {
  const ref = useRef<T>();
  useEffect(() => {
    ref.current = value;
  }, [value]);
  return ref.current;
}