UseIsMounted

This fixes the following warning in certain cases: Can't perform a React state update on an unmounted component


RESETRUNFULL
import { useRef, useEffect } from 'react';export function useIsMounted() {
  const isMounted = useRef(false);
  useEffect(() => {
    isMounted.current = true;
    return () => isMounted.current = false;
  }, []);
  return isMounted;}function Book() {
  const isMounted = useIsMounted();     //...
  useEffect(() => {
    asyncOperation().then(data => { if (isMounted.current) { setState(data); }})
  });     //...}