Files
NapCatQQ/.pnpm-store/v3/files/12/54b0903502cf2cc2cc93b326991c99625be84a4404c1694883ba8d032c08cda1010d392d7a1075ee03d73c2273098cabadc93adf9688c0b262dcc39357d202
T
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

30 lines
1.1 KiB
Plaintext

import { __read } from "tslib";
import ResizeObserver from 'resize-observer-polyfill';
import useRafState from '../useRafState';
import { getTargetElement } from '../utils/domTarget';
import useIsomorphicLayoutEffectWithTarget from '../utils/useIsomorphicLayoutEffectWithTarget';
function useSize(target) {
var _a = __read(useRafState(function () {
var el = getTargetElement(target);
return el ? { width: el.clientWidth, height: el.clientHeight } : undefined;
}), 2), state = _a[0], setState = _a[1];
useIsomorphicLayoutEffectWithTarget(function () {
var el = getTargetElement(target);
if (!el) {
return;
}
var resizeObserver = new ResizeObserver(function (entries) {
entries.forEach(function (entry) {
var _a = entry.target, clientWidth = _a.clientWidth, clientHeight = _a.clientHeight;
setState({ width: clientWidth, height: clientHeight });
});
});
resizeObserver.observe(el);
return function () {
resizeObserver.disconnect();
};
}, [], target);
return state;
}
export default useSize;