Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | 11x 11x 6x 6x 6x 11x | import { useCallback, useEffect, useRef } from "react"; import type { IsMountedFunction } from "./IsMountedFunction"; /** * This hook provides a function that returns whether the component is still mounted. * This is useful as a check before calling set state operations which will generates * a warning when it is called when the component is unmounted. * @returns a function that returns true if the component is still mounted. */ export function useMounted(): IsMountedFunction { const mountedRef = useRef(false); useEffect(() => { mountedRef.current = true; return function useMountedEffectCleanup() { mountedRef.current = false; }; }, []); return useCallback(() => mountedRef.current, [mountedRef]); } |