@orca-fe/hooks
Version:
React Hooks Collections
29 lines (28 loc) • 1.17 kB
TypeScript
import type { ScrollListenController } from 'ahooks/lib/useScroll';
import type { BasicTarget } from './utils/domTarget';
type Position = {
left: number;
top: number;
};
export declare const MANUAL_SCROLL_UP = "up";
export declare const MANUAL_SCROLL_DOWN = "down";
export declare const MANUAL_SCROLL_LEFT = "left";
export declare const MANUAL_SCROLL_RIGHT = "right";
export type ManualScrollDirection = typeof MANUAL_SCROLL_UP | typeof MANUAL_SCROLL_DOWN | typeof MANUAL_SCROLL_LEFT | typeof MANUAL_SCROLL_RIGHT;
export type UseManualScrollOptions = {
/** 默认触发的滚动量 */
defaultScrollStep?: number;
/** 滚动时长,单位毫秒 */
duration?: number;
/** 控制是否更新滚动信息(同 useScroll) */
shouldUpdate?: ScrollListenController;
};
export default function useManualScroll(target: BasicTarget, options?: UseManualScrollOptions): {
scrollToLeft: boolean;
scrollToRight: boolean;
scrollToTop: boolean;
scrollToBottom: boolean;
position: Position | undefined;
run: (this: unknown, direction: ManualScrollDirection, scrollStep?: number | undefined) => void | undefined;
};
export {};