Files
NapCatQQ/.pnpm-store/v3/files/f3/db54e0e4277029a3c7cad087c81e2fbda5572a02f85faec04e307dfd4f63f9b1b4d18570e9a83edf60373672a2d3977e7bd34db02fff1968ad0f44ec6c2f68
T
TanTan e311ca3275
Build NapCat Artifacts / Type Check & Test (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

20 lines
781 B
Plaintext

import { getTargetElement } from '../utils/domTarget';
import useDeepCompareEffectWithTarget from '../utils/useDeepCompareWithTarget';
import useLatest from '../useLatest';
var useMutationObserver = function (callback, target, options) {
if (options === void 0) { options = {}; }
var callbackRef = useLatest(callback);
useDeepCompareEffectWithTarget(function () {
var element = getTargetElement(target);
if (!element) {
return;
}
var observer = new MutationObserver(callbackRef.current);
observer.observe(element, options);
return function () {
observer === null || observer === void 0 ? void 0 : observer.disconnect();
};
}, [options], target);
};
export default useMutationObserver;