@react-hookz/web
Version:
React hooks done right, for browser and SSR.
21 lines (20 loc) • 647 B
JavaScript
import { useCallback, useEffect, useRef } from 'react';
/**
* Returns a function that returns the current mount state. This hook is useful when you have to
* detect component mount state within async effects.
*
* @param initialValue Initial value.
*
* @return Function that returns `true` only if the component is mounted.
*/
export function useIsMounted(initialValue = false) {
const isMounted = useRef(initialValue);
const get = useCallback(() => isMounted.current, []);
useEffect(() => {
isMounted.current = true;
return () => {
isMounted.current = false;
};
}, []);
return get;
}