shineout
Version:
Shein 前端组件库
30 lines (29 loc) • 1.2 kB
TypeScript
import React, { ReactNode } from 'react';
import { PureComponent } from '../component';
import { TbodyProps, Row } from './Props';
import { KeygenResult } from '../@types/common';
export declare const RENDER_COL_GROUP_EVENT = "RENDER_COL_GROUP_EVENT";
interface RowData<DataItem> extends Row<DataItem> {
ignoreBorderRight: boolean;
content?: ReactNode;
}
interface TbodyState {
expand: Record<string, boolean>;
}
declare class Tbody<DataItem, Value> extends PureComponent<TbodyProps<DataItem, Value>, TbodyState> {
colgroupSetted: boolean;
keys: Record<string, boolean>;
body: HTMLTableSectionElement;
constructor(props: TbodyProps<DataItem, Value>);
componentDidMount(): void;
componentDidUpdate(prevProps: TbodyProps<DataItem, Value>): void;
bodyRender(): void;
bindBody(el: HTMLTableSectionElement): void;
handleExpand(key: KeygenResult, render: () => ReactNode): void;
findExpandFunc(key: KeygenResult, i: number): React.ReactNode;
renderTr(row: Row<DataItem>[], i: number): JSX.Element;
renderPlaceholderTr(): JSX.Element;
renderTrs(rows: RowData<DataItem>[][]): JSX.Element[];
render(): JSX.Element;
}
export default Tbody;