分页

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

基础用法

使用 layout 属性,其值由用逗号分隔的不同的分页组件组成。分页组件有:prev (一个跳转到上一页的按钮),next (一个跳转到下一页的按钮),pager (页码列表),jumper (一个跳页输入框),total (总项目数),sizes (一个决定页面大小的选择器) 以及 ->(在此符号之后的所有元素都将被推到右边)。

页数很少时
  • 1
  • 2
  • 3
  • 4
  • 5
页数超过 7 页时
  • 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 来改变 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页面大小的默认初始值,不设置与设置 10 相同number
total总项目数number
page-count总页数。 设置 totalpage-count 就会显示分页; 如果您需要 page-sizes,则必须有 totalnumber
pager-count页码按钮的数量。 当总页数超过该值时,分页将折叠number7
current-page / v-model:current-page当前页码number
default-current-page当前页的默认初始值,不设置与设置 1 相同number
layout分页的布局,用逗号分隔的元素stringprev, pager, next, jumper, ->, total
page-sizes每页项目数的选项object[10, 20, 30, 40, 50, 100]
append-size-to 2.8.4尺寸下拉菜单要附加到哪个元素string
popper-class每页条数选择器下拉菜单的自定义类名string''
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,您必须监听 current-page 的变化,同时定义 @update:current-page,否则分页将不起作用。
  • 如果定义了 page-size 且页面大小选择器已显示(layout 中包含 sizes),您也必须监听 page-size 的变化,通过定义 @update: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

来源

组件样式文档

贡献者