@opensig/opendesign
Version:
22 lines (21 loc) • 681 B
TypeScript
import { Ref } from 'vue';
import { AxisSelector } from '../utils/alignment';
/**
* @description wheel 边界处理配置
*/
export interface UseWheelOpts {
/** 滚动容器引用 */
wrapperRef: Ref<HTMLElement | undefined>;
/** 是否水平布局 */
isHorizontal: Ref<boolean>;
/** 轴选择器 */
axis: AxisSelector;
}
/**
* @description wheel 边界处理——列表到顶/底时阻止滚轮冒泡到父级
*
* 当列表已到达边界且滚轮方向一致时 preventDefault,否则放行。
* 水平布局用 deltaX,shift+wheel 转换 deltaY→deltaX。
* @param opts 配置项
*/
export declare function useWheel(opts: UseWheelOpts): void;