UNPKG

@equinor/eds-utils

Version:

Utility functions and hooks for the Equinor Design System

18 lines (15 loc) 400 B
import { useEffect } from 'react'; const useOutsideClick = (el, callback) => { useEffect(() => { const handleClick = e => { if (el && !el.contains(e.target)) { callback(e); } }; document.addEventListener('click', handleClick); return () => { document.removeEventListener('click', handleClick); }; }, [el, callback]); }; export { useOutsideClick };