pagination

Pagination

Lets the shopper move through numbered pages of results, with Previous and Next and, when there are many pages, the first and last page around an ellipsis. The current page is marked from the pagination's own page. In a container narrower than 28rem only the current page stays between Previous and Next, which drop their labels below 24rem.

States: Default

Parts

PartFileDoes
PaginationPagination.vueGroups all parts of the pagination.
PaginationContentPaginationContent.vueLists the page numbers, ellipses and navigation buttons of the pagination.
PaginationEllipsisPaginationEllipsis.vueMarks pages that are skipped between the shown page numbers.
PaginationFirstPaginationFirst.vueLets the user jump to the first page.
PaginationItemPaginationItem.vueShows one page number in the list that the user can go to.
PaginationLastPaginationLast.vueLets the user jump to the last page.
PaginationLinkPaginationLink.vueLinks to a specific page and marks it when it is the current one.
PaginationNextPaginationNext.vueLets the user go to the next page.
PaginationPreviousPaginationPrevious.vueLets the user go to the previous page.

Anatomy

<Pagination>
  <PaginationContent>
    <PaginationPrevious />
    <PaginationItem />
    <PaginationEllipsis />
    <PaginationNext />
  </PaginationContent>
</Pagination>

Styling

PartRecipe
Paginationpagination
PaginationContentpagination-content
PaginationEllipsispagination-ellipsis
PaginationNextpagination-next
PaginationPreviouspagination-previous

Install

Writes 10 files into components/ui/pagination/. For agents, npx @frontic/ui docs pagination prints this reference as markdown; the MCP server serves the same.

Installs with it
button
npm packages
@lucide/vue
@vueuse/core
reka-ui

Built from

API reference

Pagination Pagination.vue

Groups all parts of the pagination. Renders a <nav>.

PropTypeDefault
pagenumber—
defaultPagenumber1
itemsPerPage*number—
totalnumber0
siblingCountnumber2
disabledbooleanfalse
showEdgesbooleanfalse
asChildbooleanfalse
asAsTag | Component'nav'
classClassValue—
EventPayload
update:pagevalue: number
SlotSlot props
default{ page: number; pageCount: number; }
Recipe paginationSets
base: pagination 4 properties

PaginationContent PaginationContent.vue

PaginationEllipsis PaginationEllipsis.vue

PaginationFirst PaginationFirst.vue

PaginationItem PaginationItem.vue

PaginationLast PaginationLast.vue

PaginationNext PaginationNext.vue

PaginationPrevious PaginationPrevious.vue

Example