(root)/app/hooks/useOutsideClick.js – Rev 5
Rev 748 |
Ir a la última revisión |
|
Ultima modificación |
Ver Log
|
| Rev |
Autor |
Línea Nro. |
Línea |
| 5 |
stevensc |
1 |
import { useEffect } from 'react'
|
|
|
2 |
|
|
|
3 |
const useOutsideClick = (ref, handler) => {
|
|
|
4 |
useEffect(() => {
|
|
|
5 |
const handleClickOutside = (event) => {
|
|
|
6 |
if (ref?.current && !ref.current?.contains(event.target)) {
|
|
|
7 |
handler()
|
|
|
8 |
}
|
|
|
9 |
}
|
|
|
10 |
|
|
|
11 |
document.addEventListener('mousedown', handleClickOutside)
|
|
|
12 |
return () => {
|
|
|
13 |
document.removeEventListener('mousedown', handleClickOutside)
|
|
|
14 |
}
|
|
|
15 |
}, [ref])
|
|
|
16 |
}
|
|
|
17 |
|
|
|
18 |
export default useOutsideClick
|