tsp-component
Version:
提供多端和react版本的UI组件
96 lines (94 loc) • 1.92 kB
TypeScript
interface TspComponentListViewProps {
className?: string;
/**
* 滚动容器的ID,没有就是body
*/
scrollContainerId?: string;
/**
* 延迟的加载时间
*/
delay?: number;
/**
* 网络请求函数,不包含成功和失败的回调
*/
request?: (params: object) => void;
/**
* 接口参数
*/
params: TspComponentAjaxPostOption;
/**
* 数据源字段
*/
dataKey?: string[];
/**
* 页数字段
*/
pageKey?: string;
/**
* 页数开始值
*/
pageStart?: number;
/**
* 每页条数字段
*/
pageSizeKey?: string;
/**
* 数据渲染函数
*/
rowRender: (data: any, index: number, dataSoucre: any) => JSX.Element;
/**
* 首次加载空视图
*/
emptyView: any;
/**
* 首次加载失败的视图
*/
failView: any;
/**
* 超时的视图
*/
timeoutView: any;
/**
* 加载中的视图
*/
loadingView: any;
/**
* 加载请求成功并且有数据的额外视图,用于renderRow之外的展示的
*/
successBeforeView?: (data: any) => any;
/**
* 加载请求成功的额外视图,用于renderRow之外的展示的
*/
completeBeforeView?: (data: any) => any;
/**
* 加载成功的额外视图,用于renderRow之外的展示的
*/
successAfterView?: (data: any) => any;
/**
* 重载ID
*/
reloadId?: any;
/**
* 刷新ID
*/
refreshId?: any;
/**
* 过滤
*/
filter?: (data: any) => boolean;
}
interface TspComponentListViewState {
/**
* 储存即将渲染的元素
*/
render: any;
}
/**
* complete: 完成
* loading: 加载中
* fail: 加载失败
* empty: 没有数据
* timeout: 加载超时
* over: 加载完毕
*/
type TspComponentListViewStatus = 'complete' | 'loading' | 'fail' | 'empty' | 'timeout' | 'over';