@opensig/opendesign
Version:
28 lines (27 loc) • 901 B
TypeScript
export interface ObserveInstance {
observer: ResizeObserver;
record: number;
}
export type ResizeListenerT = (entry: ResizeObserverEntry, isFirst: boolean) => void;
/**
* 创建元素尺寸变化监听器,
*/
export declare function useResizeObserver(): {
/**
* 监听实例
*/
observer: ObserveInstance;
/**
* 创建监听实例
* el: 监听元素
* listener: resize回调, 移除监听时需要指定该监听函数
*/
observe: (el: HTMLElement, listener: (entry: ResizeObserverEntry, isFirst: boolean) => void) => ObserveInstance | null;
/**
* 移除监听
* el: 要移除监听的元素
* listener: 要移除的监听函数,如果不传,则使用初始化时的onResize回调
*/
unobserve: (el: HTMLElement, listener: (entry: ResizeObserverEntry, isFirst: boolean) => void) => void;
destroy(): void;
};