choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
42 lines (41 loc) • 1.7 kB
TypeScript
import React, { Component, ReactNode } from 'react';
import PropTypes from 'prop-types';
import { ColumnProps } from './Column';
import { ElementProps } from '../core/ViewComponent';
import Record from '../data-set/Record';
import { ColumnLock } from './enum';
export interface TableTBodyProps extends ElementProps {
lock?: ColumnLock | boolean;
}
export default class TableTBody extends Component<TableTBodyProps, any> {
static displayName: string;
static propTypes: {
lock: PropTypes.Requireable<boolean | ColumnLock>;
};
static contextType: React.Context<{
tableStore: import("./TableStore").default;
}>;
tableBody: HTMLElement | null;
nextFrameActionId?: number;
get leafColumns(): ColumnProps[];
get leafColumnsBody(): ColumnProps[];
handleResize(): void;
saveRef(node: any): void;
/**
* 虚拟滚动计算可视化数据
*/
processData(): any;
render(): JSX.Element;
componentWillMount(): void;
componentWillUnmount(): void;
processDataSetListener(flag: boolean): void;
handleDataSetValidate({ result }: {
result: any;
}): Promise<void>;
componentDidUpdate(): void;
getRows(records: Record[], columns: ColumnProps[], expanded?: boolean, lock?: ColumnLock | boolean, virtual?: boolean): ReactNode;
getEmptyRow(columns: ColumnProps[], lock?: ColumnLock | boolean): ReactNode | undefined;
renderExpandedRows(columns: ColumnProps[], record: Record, isExpanded?: boolean, lock?: ColumnLock | boolean): ReactNode;
getRow(columns: ColumnProps[], record: Record, index: number, expanded?: boolean, lock?: ColumnLock | boolean): ReactNode;
syncBodyHeight(): void;
}