UNPKG

focalxaiinspection

Version:

Focalx AI Inspection

24 lines (19 loc) 533 B
import { useEffect } from "react"; const useOnClickOutSide = (open, ref, handler) => { useEffect(() => { const checkIfClickedOutside = (e) => { if ( open && ref.current && !ref.current.contains(e.target) ) { handler(); } }; document.addEventListener("click", checkIfClickedOutside); return () => { document.removeEventListener("click", checkIfClickedOutside); }; }, [handler, open, ref]); }; export default useOnClickOutSide;