antd-mobile
Version:
<div align="center">
15 lines • 426 B
JavaScript
import { useEffect } from 'react';
import { useMemoizedFn } from 'ahooks';
export function useMutationEffect(effect, targetRef, options) {
const fn = useMemoizedFn(effect);
useEffect(() => {
const observer = new MutationObserver(() => {
fn();
});
if (!targetRef.current) return;
observer.observe(targetRef.current, options);
return () => {
observer.disconnect();
};
}, [targetRef]);
}