shineout
Version:
Shein 前端组件库
38 lines (37 loc) • 1.53 kB
TypeScript
import React from 'react';
import { PureComponent } from '../component';
import { ColumnItem, ColumnOrder, SimpleTableProps } from './Props';
interface SimpleTableState {
colgroup?: number[];
overHeight: boolean;
overWidth: boolean;
resize: boolean;
}
declare class SimpleTable<DataItem, Value> extends PureComponent<SimpleTableProps<DataItem, Value>, SimpleTableState> {
bindHeader: (el: HTMLDivElement) => void;
bindBody: (el: HTMLDivElement) => void;
bindFooter: (el: HTMLDivElement) => void;
removeReiszeObserver: () => void;
body: HTMLDivElement;
header: HTMLDivElement;
footer: HTMLDivElement;
lastColGroup: number[];
cyclicCounter: number;
constructor(props: SimpleTableProps<DataItem, Value>);
componentDidMount(): void;
componentDidUpdate(prevProps: SimpleTableProps<DataItem, Value>): void;
componentWillUnmount(): void;
bindElement(key: 'header' | 'body' | 'footer', el: HTMLDivElement): void;
resetColGroup(): void;
scrollCheck(): void;
handleSortChange(finalOrder: ColumnOrder | undefined, sorter: ColumnItem<DataItem>['sorter'], index: number, cancelOrder: ColumnOrder, manual: boolean): void;
handleColgroup(tds: NodeListOf<HTMLTableCellElement>): void;
handleScroll({ currentTarget }: {
currentTarget: HTMLElement;
}): void;
renderHeader(): JSX.Element;
renderFooter(): JSX.Element | null;
renderBody(): JSX.Element;
render(): React.ReactNode[] | JSX.Element;
}
export default SimpleTable;