UNPKG

2.64 kBTypeScriptView Raw
1/// <reference types="react" />
2
3import * as React from 'react';
4import CommonProps from '../util';
5import { PopupProps } from '../overlay';
6import { SelectProps } from '../select';
7
8interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
9 onChange?: any;
10}
11
12export interface PaginationProps extends HTMLAttributesWeak, CommonProps {
13
14 /**
15 * 分页组件类型
16 */
17 type?: 'normal' | 'simple' | 'mini';
18
19 /**
20 * 前进后退按钮样式
21 */
22 shape?: 'normal' | 'arrow-only' | 'arrow-prev-only' | 'no-border';
23
24 /**
25 * 分页组件大小
26 */
27 size?: 'small' | 'medium' | 'large';
28
29 /**
30 * (受控)当前页码
31 */
32 current?: number;
33
34 /**
35 * (非受控)初始页码
36 */
37 defaultCurrent?: number;
38
39 /**
40 * 页码发生改变时的回调函数
41 */
42 onChange?: (current: number, e: {}) => void;
43
44 /**
45 * 总记录数
46 */
47 total?: number;
48
49 /**
50 * 总数的渲染函数
51 */
52 totalRender?: (total: number, range: Array<any>) => void;
53
54 /**
55 * 页码显示的数量,更多的使用...代替
56 */
57 pageShowCount?: number;
58
59 /**
60 * 一页中的记录数
61 */
62 pageSize?: number;
63
64 /**
65 * 每页显示选择器类型
66 */
67 pageSizeSelector?: false | 'filter' | 'dropdown';
68
69 /**
70 * 每页显示选择器可选值
71 */
72 pageSizeList?: Array<any> | Array<any>;
73
74 /**
75 * 自定义页码渲染函数,函数作用于页码button以及当前页/总页数的数字渲染
76 */
77 pageNumberRender?: (index: number) => React.ReactNode;
78
79 /**
80 * 每页显示选择器在组件中的位置
81 */
82 pageSizePosition?: 'start' | 'end';
83
84 /**
85 * 存在每页显示选择器时是否使用浮动布局
86 */
87 useFloatLayout?: boolean;
88
89 /**
90 * 每页显示记录数量改变时的回调函数
91 */
92 onPageSizeChange?: (pageSize: number) => void;
93
94 /**
95 * 当分页数为1时,是否隐藏分页器
96 */
97 hideOnlyOnePage?: boolean;
98
99 /**
100 * type 设置为 normal 时,在页码数超过5页后,会显示跳转输入框与按钮,当设置 showJump 为 false 时,不再显示该跳转区域
101 */
102 showJump?: boolean;
103
104 /**
105 * 设置页码按钮的跳转链接,它的值为一个包含 {page} 的模版字符串,如:http://www.taobao.com/{page}
106 */
107 link?: string;
108
109 /**
110 * 弹层组件属性,透传给Popup
111 */
112 popupProps?: PopupProps;
113 selectProps?: SelectProps;
114}
115
116export default class Pagination extends React.Component<PaginationProps, any> {}