Skip to content

分页 Pagination


采用分页的形式分隔长列表,每次只加载一个页面

何时使用

  • 当需要进行分页展示时

基本使用

12345•••10
Show Code
vue
<script setup lang="ts">
import { ref } from 'vue'

const total = ref(100)
const pagination = ref({
  pageSize: 10,
  p: 1
})
function changePage (pager: object) { // 分页回调
  console.log('pager:', pager)
}
</script>
<template>
  <Pagination
    :current="pagination.p"
    :page-size="pagination.pageSize"
    :total="total"
    @change="changePage" />
</template>

靠左展示

12345•••10
Show Code
vue
<script setup lang="ts">
import { ref } from 'vue'

const total = ref(100)
const pagination = ref({
  pageSize: 10,
  p: 1
})
function changePage (pager: object) { // 分页回调
  console.log('pager:', pager)
}
</script>
<template>
  <Pagination
    :current="pagination.p"
    :page-size="pagination.pageSize"
    :total="total"
    placement="left"
    @change="changePage" />
</template>

靠右展示

12345•••10
Show Code
vue
<script setup lang="ts">
import { ref } from 'vue'

const total = ref(100)
const pagination = ref({
  pageSize: 10,
  p: 1
})
function changePage (pager: object) { // 分页回调
  console.log('pager:', pager)
}
</script>
<template>
  <Pagination
    :current="pagination.p"
    :page-size="pagination.pageSize"
    :total="total"
    placement="right"
    @change="changePage" />
</template>

快速跳转和数据总量

共 10 页 / 100 条12345•••10跳至
Show Code
vue
<script setup lang="ts">
import { ref } from 'vue'

const total = ref(100)
const pagination = ref({
  pageSize: 10,
  p: 1
})
function changePage (pager: object) { // 分页回调
  console.log('pager:', pager)
}
</script>
<template>
  <Pagination
    :current="pagination.p"
    :page-size="pagination.pageSize"
    :total="total"
    show-quick-jumper
    show-total
    @change="changePage" />
</template>

APIs

参数说明类型默认值必传
current当前页数number1false
pageSize每页条数number10false
total数据总数number0false
pageListNum显示的页码数组长度number5false
hideOnSinglePage只有一页时是否隐藏分页booleanfalsefalse
showQuickJumper是否可以快速跳转至某页booleanfalsefalse
showTotal是否显示当前页数和数据总量booleanfalsefalse
placement分页展示位置:靠左、居中、靠右'left' | 'center' | 'right''center'false

Events

事件名称说明参数
change页码改变后的回调(pager: { page: number, pageSize: pageSize }) => void

Released under the MIT License.