跳至正文

Pagination

用于在结果页面之间切换的链接或按钮。

浏览器
Chrome 123+Firefox 121+Safari 17.5+
层级
0
压缩后大小
2.59 kB
强制布局预算
0 ms
axe 预算
0
支持 SSR
是
公开契约
测试环境

交互示例

Pagination

API

Pagination.Root

属性类型默认值说明
aria-labelstring"Pagination"导航地标的无障碍名称。
boundaryCountnumber1范围两端始终显示的页数。
count*number—总页数。
defaultPagenumber1组件非受控时初始选中的页。
disabledbooleanfalse禁用所有页面和导航控件。
onPageChange(page: number) => void—页面变化时,使用新页码调用。
pagenumber—当前页,使组件受控。
showFirstLastbooleanfalse为生成的项目添加首页和末页控件。
siblingCountnumber1当前页两侧各显示的页数。
childrenReactNode—自定义项目标记;省略时渲染自动生成的页面列表。
getPageHref(page: number) => string—构建每页的href,让服务端外壳渲染无须JavaScript即可工作的真实链接。
renderReactElement | ((props, state) => ReactElement)—替换渲染元素,同时保留行为和无障碍连接关系。

Pagination.List

属性类型默认值说明
childrenReactNode—在列表内渲染的分页项。
renderReactElement | ((props, state) => ReactElement)—替换渲染元素,同时保留行为和无障碍连接关系。

Pagination.Item

属性类型默认值说明
childrenReactNode—单个分页列表项的内容。
renderReactElement | ((props, state) => ReactElement)—替换渲染元素,同时保留行为和无障碍连接关系。

Pagination.Link

Pagination.Ellipsis

属性类型默认值说明
childrenReactNode—省略号内容,对辅助技术隐藏。
renderReactElement | ((props, state) => ReactElement)—替换渲染元素,同时保留行为和无障碍连接关系。

键盘

按键操作
Tab将焦点移入或移出控件
Enter / Space获得焦点时激活(按钮类控件)

无障碍

尽可能使用语义化HTML。可在交互示例中检查渲染的标记;仅在原生元素无法满足需求时添加ARIA。

样式钩子

data-disabled