Rev 2775 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
import { useEffect, useRef } from 'react';
export function useOutsideClick(callback = () => {}) {
const elementRef = useRef();
useEffect(() => {
const handleClickOutside = (event) => {
if (!elementRef?.current) return;
if (!elementRef.current?.contains(event.target)) callback();
};
document.addEventListener('mousedown', handleClickOutside);
return () => {
document.removeEventListener('mousedown', handleClickOutside);
};
}, [elementRef]);
return [elementRef];
}