# useIsMounted > A stable getter for whether the component is still mounted. - Category: Effects - Package: `hookli` (install with `npm i hookli`) - Docs: https://hookli.vercel.app/docs/use-is-mounted ## Signature ```ts useIsMounted(): () => boolean ``` ## Returns - `isMounted`: `() => boolean` — A stable getter that returns true while mounted and false after unmount. Call it inside async callbacks before setting state; its identity never changes, so it is safe to omit from dependency arrays. ## Usage ```tsx import { useIsMounted } from "hookli"; export function Demo() { const isMounted = useIsMounted(); async function load() { const data = await fetchData(); if (isMounted()) setData(data); } return ; } ``` ## Source `src/hooks/use-is-mounted/use-is-mounted.ts` ```ts import { useCallback, useEffect, useRef } from "react"; export const useIsMounted = () => { const isMounted = useRef(false); useEffect(() => { isMounted.current = true; return () => { isMounted.current = false; }; }, []); return useCallback(() => isMounted.current, []); }; ```