Pagination 分页

分页导航,用于辅助长列表只加载部分数据,可以快速切换到指定数据页。

获取组件

import { Pagination } from 'rsuite';

演示

默认

尺寸

通过 size 属性调整分页组件大小(可选值:'xs'、'sm'、'md'、'lg')。

禁用

使用 disabled 属性禁用分页控件。也可以传入函数有选择地禁用特定页码。

上一页和下一页

通过 prevnext 属性显示上一页和下一页导航按钮。

第一页和最后一页

使用 firstlast 属性显示第一页和最后一页导航按钮。

路由库

通过自定义 linkAslinkProps 属性,将分页组件与路由库集成。

自定义布局

使用 layout 属性自定义分页组件的结构。该属性接受一个元素数组,将按指定顺序渲染。可用元素包括:

  • 'pager':标准页码导航按钮(默认)
  • 'total':总条目显示区域
  • 'limit':每页条目选择器
  • 'skip':快速页面跳转输入框
  • '-':弹性占位符(填充剩余空间)
  • '|':垂直分隔符

Props

<Pagination>

属性名称 类型 (默认值) 描述
activePage * number (1) 当前页码
boundaryLinks boolean 显示边界分页按钮 1 和 pages
classPrefix string ('pagination-group') 组件 CSS 类的前缀
disabled boolean | (eventKey: number) => boolean 禁用分页
ellipsis boolean 显示省略符
first boolean 显示第一页
last boolean 显示最后一页
layout LayoutType[] (['pager']) 自定义一个分页组件的布局
limit number (30) 每页显示的条数。将会借助 total 和 limit 计算出分页数
limitOptions number[] ([30,50,100]) 每页条数的选择项
linkAs ElementType (button) 为组件选项自定义元素类型
linkProps object 为组件选项添加属性
locale PaginationLocale 定义本地化设置,使组件文本根据用户地区显示相应语言
maxButtons number 分页按钮最多显示数
next boolean 显示下一页
onChangeLimit (limit:number) => void; 每页显示的条数改变的回调
onChangePage (page:number) => void; 页码改变的回调
prev boolean 显示上一页
size 'lg' | 'md' | 'sm' | 'xs' ('sm') 分页组件的尺寸
total * number 数据总数。一般通过服务端得到

类型定义

LayoutType

type LayoutType = 'total' | '-' | 'pager' | '|' | 'limit' | 'skip';