Pagination 分页

当数据量过多时,使用分页分解数据。

基础用法

设置 layout 属性,用逗号分隔布局元素。 分页元素包括:prev (上一页按钮)、next (下一页按钮)、pager (页码列表)、jumper (跳转输入框)、total (总条目数)、sizes (用于确定页码大小的选择器) 以及 -> (在此符号后的所有元素都将被拉至右侧)。

基础用法
  • 1
  • 2
  • 3
  • 4
  • 5
设置最大页码按钮数
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 100

页码按钮的数量

默认情况下,当总页数超过 7 页时,Pagination 会折叠额外的页码按钮。 这可以通过 pager-count 属性进行配置。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 50

带有背景色的按钮

设置 background 属性,分页按钮将带有背景色。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 100

小型分页

在空间有限的情况下,可以使用小型分页。

设置 size 属性来改变尺寸。 这里演示了 small 尺寸。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

只有一页时隐藏分页

当只有一页时,可以通过设置 hide-on-single-page 属性来隐藏分页。


  • 1

附加功能

根据场景添加更多模块。

本例是一个完整的用例。 它使用 size-changecurrent-change 事件来处理页码大小和当前页的更改。 page-sizes 接受一个整数数组,其中的每个整数代表 sizes 选择器选项中的不同页码大小,例如 [100, 200, 300, 400] 表示选择器将有四个选项:每页 100、200、300 或 400 条目。

背景色
disabled

总条目数
共 1000 条
  • 1
  • 3
  • 4
  • 5
  • 6
  • 7
  • 10
更改页码大小
  • 1
  • 3
  • 4
  • 5
  • 6
  • 7
  • 10
跳转
  • 1
  • 3
  • 4
  • 5
  • 6
  • 7
  • 10
前往
综合用法
共 400 条
  • 1
  • 2
  • 3
  • 4
前往

API

属性

名称描述类型默认值
size 尺寸 2.7.6分页尺寸枚举'default'
背景色分页按钮是否带有背景色booleanfalse
page-size / v-model:page-size每页显示条目个数number
default-page-size每页显示条目数的初始值,不设置则默认为 10number
total总条目数number
page-count总页数。 设置 totalpage-count 之一即可显示分页;如果需要 page-sizes,则必须设置 totalnumber
pager-count页码按钮的数量。 当总页数超过此值时,Pagination 会进行折叠number7
current-page / v-model:current-page当前页码number
default-current-page当前页码的初始值,不设置则默认为 1number
layout分页布局,子组件名用逗号分隔stringprev, pager, next, jumper, ->, total
page-sizes每页显示个数选择器的选项设置array[10, 20, 30, 40, 50, 100]
append-size-to 2.8.4每页显示个数下拉框插入至哪个元素string
popper-class每页显示个数选择器下拉框的自定义类名string''
popper-style 2.11.5每页显示个数选择器下拉框的自定义样式string / object
prev-text替代图标显示的上一页文字string''
prev-icon上一页按钮的图标,优先级低于 prev-textstring / ComponentArrowLeft
next-text替代图标显示的下一页文字string''
next-icon下一页按钮的图标,优先级低于 next-textstring / ComponentArrowRight
disabled是否禁用分页booleanfalse
teleported 2.3.13是否将分页下拉列表插入至 bodybooleantrue
hide-on-single-page只有一页时是否隐藏booleanfalse
small 已弃用是否使用小型分页booleanfalse

警告

我们会检测一些已弃用的用法,如果您的分页未显示或运行不符合预期,请检查以下规则

  • 您必须定义 totalpage-count 之一,否则我们无法确定总页数。 当两者都定义时,page-count 具有更高优先级。
  • 如果定义了 current-page,则必须通过定义 @update:current-page 来监听 current-page 的更改,否则分页将无法正常运行。
  • 如果定义了 page-size 且显示了页码大小选择器(layout 中包含 sizes),则必须通过定义 @update:page-size 来监听 page-size 的更改,否则更改页码大小将无法正常运行。

事件

名称描述类型
size-changepage-size 改变时触发Function
current-changecurrent-page 改变时触发Function
change 2.4.4current-pagepage-size 改变时触发Function
prev-click当用户点击上一页按钮且当前页改变时触发Function
next-click当用户点击下一页按钮且当前页改变时触发Function

警告

不推荐使用上述事件(但出于兼容性原因仍支持),更好的选择是使用 v-model 进行双向数据绑定。

插槽

名称描述
default自定义内容。 要使用此功能,您需要在 layout 中声明 slot

来源

组件样式文档

贡献者