jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
51 lines (50 loc) • 1.7 kB
TypeScript
/**
* 结果表格(暂时不支持结果排序)
*/
import type { Option, Options } from 'jamis-core';
import type { BaseSelectionProps } from '../../types';
import { BaseSelection } from '../../components';
export interface ResultTableSelectionProps extends BaseSelectionProps {
title?: string;
placeholder?: string;
searchable?: boolean;
onSearch?: Function;
columns: Array<{
name: string;
label: string;
[propName: string]: any;
}>;
cellRender: (column: {
name: string;
label: string;
[propName: string]: any;
}, option: Option, colIndex: number, rowIndex: number) => JSX.Element;
}
export interface ResultTableSelectionState {
tableOptions: Options;
searching: Boolean;
searchTableOptions: Options;
}
export declare class BaseResultTableSelection extends BaseSelection<ResultTableSelectionProps, ResultTableSelectionState> {
static defaultProps: {
cellRender: (column: {
name: string;
label: string;
[propName: string]: any;
}, option: Option, colIndex: number, rowIndex: number) => JSX.Element;
placeholder: string;
itemRender: (option: Option, states: import("../../types").ItemRenderStates) => JSX.Element;
multiple: boolean;
clearable: boolean;
};
state: ResultTableSelectionState;
static getDerivedStateFromProps(props: ResultTableSelectionProps): {
tableOptions: Options;
};
handleCloseItem(option: Option): void;
search(inputValue: string): void;
clearSearch(): void;
renderTable(): JSX.Element;
render(): JSX.Element;
}
export default BaseResultTableSelection;