Pagination

Navigate long collections one page at a time.

Pagination

Default

Layout

Set layout of Pagination, pass an array or elements separated with a comma

The accepted values:

  • prev a button navigating to the previous page
  • next a button navigating to the next page
  • jumper a jump-to input
  • pager page list
  • sizes a select to determine page size
  • total total item count
  • -> Every element after this symbol will be pulled to the right
NOTE

We’ll detect some deprecated usages, if your pagination don’t appeared or worked as expected, please check rules below:

You have to define one of total and page-count, otherwise we can’t determine count of total pages.When both defined, page-count taken as priority. If current-page is defined, you have to listen current-page change, by also define @update:current-page, otherwise pagination didn’t work. If page-size is defined while page size selector displayed(sizes included in layout), you have to listen page-size change as well, by define @update:page-size, otherwise change of page size didn’t work.

Easily add a pagination with the s-pagination component, the required properties are total

Code copied

Color

Use the color prop to change the base color of a component and supported child elements. See theme configuration for color and theme details.

Supported values:

  • primary
  • success
  • danger
  • warning
  • dark
  • RGB
  • HEX
Code copied

Disabled

Change the disabled state of the component with the disabled property, this property is a boolean and you can add it without value

Code copied

Shape

Circle

Change the radius of all the elements that make up the component by making them circular with the circle property, this property is a boolean so it does not need value

Code copied

Square

Change the radius of all the elements that make up the component making them square with the square property, this property is a boolean so it does not need value

Code copied

Buttons Dotted

Use buttons-dotted to replace the inner page numbers with dot-style controls.

Code copied

Disabled Items

You can put disabled buttons specific to the pagination component with the disabled-items property, this property is an array with the number of the button you want to put in disabled status

The buttons that are in disabled will skip when changing the value for example on the next or back buttons

Code copied

Loading Items

You can make a button inside the pagination be in the state of loading with the loading-items property, this property is an array with the number of the button that you want to put in the disabled state

The buttons that are in loading will skip when changing the value for example in the next or back buttons

Code copied

Not Margin

Change the style of the entire component by removing the margin between the buttons and changing the radius with the not-margin property

Code copied

Progress

Add a progress bar to the pagination by referencing where you find the last page with the progress property

Code copied

Infinite

You can make the pagination infinite with the infinite property, this means that the arrow buttons are no longer in the disabled state

Code copied

API

PROPS

PropertyTypeValuesDescriptiondefaultExampleMore
v-model:current-pageNumbernumberDetermine the page where the user is.1
Usage
totalNumbernumberIt is the total number of pages that the component has.
Usage
colorStringTheme colorsRGBHEXChange the base color of the component.primary
Usage
disabledBooleantruefalseDetermine if the entire component is in the disabled state.
Usage
shapeStringcirclesquareChange the style of the buttons making them completely round or totally square.
Usage
buttons-dottedBooleantruefalseMakes the buttons not have the internal number and changes its size.
Usage
disabled-itemsNumber[]Determine which items are in the disabled state.
Usage
loading-itemsNumber[]Determine which items are in the charging state.
Usage
not-marginBooleantruefalseChange the margin between the items causing them to be fully glued and the radius is removed making them square.
Usage
progressBooleantruefalseAdd a progress bar to the component determined by the current page and the total of pages.
Usage
infiniteBooleantruefalseDetermine if the pagination is infinite.
Usage
v-model:page-sizeNumberitem count of each page.10
default-page-sizeNumberdefault initial value of page size
page-countNumbertotal page count. Set either total or page-count and pages will be displayed; if you need page-sizes, total is required
pager-countNumber579111315171921number of pagers. Pagination collapses when the total page count exceeds this value7
default-current-pageNumberdefault initial value of current-page
layoutString, String[]prevpagernextjumper->totalslotsizeslayout of Pagination, an array or elements separated with a comma[ "prev", "pager", "next", "jumper", "->", "total", "slot", "sizes" ]
page-sizesArraynumber[]options of item count per page[ 10, 20, 30, 40, 50, 100 ]
hide-on-single-pageBooleantruefalseoptions of item count per page
prev-textStringtext for the prev button
prev-iconString, Componenticon for the prev button, higher priority of prev-textChevronLeft
next-textStringtext for the next button
next-iconString, Componenticon for the next button, higher priority of next-textChevronRight
No matching data

SLOTS

PropertyTypeValuesDescriptiondefaultExampleMore
defaultslotCustom content. To use this, need to declare slot in layout
Usage
No matching data
Last Updated: 2026-08-17, 08:33:54