Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 1x 25x 25x 25x 25x 25x 25x 25x | import {useEffect, useRef} from 'react'
const useMutationObserver = (
callback,
options = {
attributes: true,
characterData: true,
childList: true,
subtree: true
}
) => {
const ref = useRef()
useEffect(() => {
Eif (ref.current) {
const observer = new MutationObserver(callback.bind(null, ref.current))
observer.observe(ref.current, options)
return () => observer.disconnect()
}
}, [callback, options])
return [ref]
}
export default useMutationObserver
|