@jdcfe/yep-react
Version:
一套移动端的React组件库
63 lines (62 loc) • 1.89 kB
TypeScript
import * as React from 'react';
export interface ActionModel {
text: string;
onClick?: () => void;
style?: React.CSSProperties;
className?: string;
}
export interface SwipeActionProps {
prefixCls?: string;
className?: string;
style?: React.CSSProperties;
autoClose?: boolean;
disabled?: boolean;
left?: ActionModel[];
right?: ActionModel[];
onOpen?: () => void;
onClose?: () => void;
onMovingDistance?: (distance: number) => void;
}
export default class SwipeAction extends React.PureComponent<SwipeActionProps, any> {
static defaultProps: {
prefixCls: string;
style: {};
autoClose: boolean;
disabled: boolean;
left: never[];
right: never[];
onOpen: () => null;
onClose: () => null;
onMovingDistance: () => null;
};
constructor(props: SwipeActionProps);
btnsLeftWidth: number;
left: HTMLDivElement;
btnsRightWidth: number;
right: HTMLDivElement;
openedLeft: boolean;
openedRight: boolean;
content: HTMLDivElement;
cover: HTMLDivElement;
needShowRight: boolean;
needShowLeft: boolean;
swiping: boolean;
componentDidMount(): void;
componentWillUnmount(): void;
componentDidUpdate(): void;
onCloseSwipe(ev: any): void;
createContentRef(el: HTMLDivElement): void;
createCoverRef(el: HTMLDivElement): void;
_getContentEasing(value: number, limit: number): number;
_setStyle: (value: number) => void;
open(value: number, openedLeft: boolean, openedRight: boolean): void;
close(): void;
doOpenLeft(): void;
doOpenRight(): void;
onPanStart(e: any): void;
onPan(e: any): void;
onPanEnd(e: any): void;
onBtnClick(ev: any, btn: any): void;
renderButtons(buttons: any, position: string, ref: any): JSX.Element | null;
render(): JSX.Element;
}