UNPKG

@ray-js/components

Version:

Ray basic components

132 lines (131 loc) 3.63 kB
import * as React from 'react'; export interface BaseProps extends TouchEventHandler { /** * @description.en id * @description.zh ID * @default undefined */ id?: string; /** * @description.en className * @description.zh css 类名 * @default undefined */ className?: string; /** * @description.en style * @description.zh 样式 * @default undefined */ style?: React.CSSProperties; /** * @description.en children * @description.zh 子元素 * @default undefined */ children?: React.ReactNode | React.ReactNode[] | string; /** * @description.en Mini program component slot identifier * @description.zh 小程序组件插槽标识 * @default undefined * @deprecated 该属性仅在小程序基础组件中使用, 不建议在 React DSL 中使用 */ slot?: string; } export interface HoverableProps { /** * @description.en Specifies the style class on which the button is pressed. Hover -class=" None ", no click effect * @description.zh 指定按钮按下去的样式类。当 hover-class="none" 时,没有点击态效果 * @default undefined */ hoverClassName?: string; /** * @description.en How long does it take for the click state to appear after holding, in milliseconds * @description.zh 按住后多久出现点击态,单位毫秒 * @default undefined */ hoverStartTime?: number; /** * @description.en Click retention time after finger release, in milliseconds * @description.zh 手指松开后点击态保留时间,单位毫秒 * @default undefined */ hoverStayTime?: number; } interface TouchObj { identifier: string; pageX: number; pageY: number; } interface TouchEvent { touches: TouchObj[]; changedTouches: TouchObj[]; timestamp: number; origin: any; } /** * 多端通用事件 */ export interface TouchEventHandler { /** * @description.en onClick * @description.zh 点击回调 * @default undefined */ onClick?: (e: TouchEvent) => any; /** * @description.en Long press the trigger * @description.zh 长按触发 * @default undefined */ onLongClick?: (e: TouchEvent) => any; /** * @description.en onLongPress event callback, no longer trigger click event * @description.zh 长按事件回调, 不再触发点击事件 * @default undefined * @param e */ onLongPress?: (e: TouchEvent) => any; /** * @description.en onTouchStart * @description.zh 开始触摸事件回调 * @default undefined */ onTouchStart?: (e: TouchEvent) => any; /** * @description.en onTouchMove * @description.zh 触摸移动事件回调 * @default undefined */ onTouchMove?: (e: TouchEvent) => any; /** * @description.en onTouchEnd * @description.zh 触摸结束事件回调 * @default undefined */ onTouchEnd?: (e: TouchEvent) => any; /** * @description.en onTouchCancel * @description.zh 触摸取消事件回调 * @default undefined */ onTouchCancel?: (e: TouchEvent) => any; } /** * 通用回调事件 */ export interface CallBackProps { /** * 接口调用成功的回调函数 */ success?: (res?: any) => void; /** * 接口调用失败的回调函数 */ fail?: (res?: any) => void; /** * 接口调用结束的回调函数(调用成功、失败都会执行) */ complete?: (res?: any) => void; } export * from './event';