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

32 lines
919 B
Plaintext

const windowCallbacks = new Set();
let windowResizeHandler;
function createWindowResizeHandler() {
windowResizeHandler = () => {
const info = {
get width() {
return window.innerWidth;
},
get height() {
return window.innerHeight;
},
};
windowCallbacks.forEach((callback) => callback(info));
};
window.addEventListener("resize", windowResizeHandler);
}
function resizeWindow(callback) {
windowCallbacks.add(callback);
if (!windowResizeHandler)
createWindowResizeHandler();
return () => {
windowCallbacks.delete(callback);
if (!windowCallbacks.size &&
typeof windowResizeHandler === "function") {
window.removeEventListener("resize", windowResizeHandler);
windowResizeHandler = undefined;
}
};
}
export { resizeWindow };