PXD

Page Number

Navigate data that spans multiple pages.

Default

<script setup>
import { ref } from 'vue'

const page = ref(1)
</script>

<template>
  <PPageNumber v-model="page" :total="200" />
</template>

Sizes

<template>
  <PStack direction="vertical">
    <PPageNumber size="sm" :total="200" />
    <PPageNumber size="md" :total="200" />
    <PPageNumber size="lg" :total="200" />
  </PStack>
</template>

Quick Jumper

Use show-quick-jumper to let users enter a page number. The value is submitted on Enter or blur.

<script setup>
import { ref } from 'vue'

const page = ref(1)
</script>

<template>
  <PPageNumber v-model="page" :total="200" :page-size="10" show-quick-jumper />
</template>

Disabled

<template>
  <PPageNumber :model-value="3" :total="200" :page-size="10" show-quick-jumper disabled />
</template>

Props

NameTypeDefaultDescription
model-valuenumber1Current page, supports v-model
page-sizenumber10Number of items per page
page-size-optionsnumber[]() => [10, 25, 50, 100]Page sizes offered by the size selector
totalnumber0Total number of items
disabledbooleanfalseDisables all page controls
show-page-sizebooleantrueShows a select for selecting page size
show-quick-jumperbooleanfalseShows an input for jumping to a page
size'sm' | 'md' | 'lg'configProvider.sizeSize of page controls

Events

NameTypeDescription
update:pageSize(page: number) => voidEmitted when the page size changes.
update:modelValue(page: number) => voidEmitted when the page changes.

Source

Source