Skip to content

Pagination

te-pagination renders a sliding window of page numbers around the current page.

Basic

vue
<te-pagination v-model:active-page="page" :pages="10" />

Icons, rounded and sizes

vue
<te-pagination v-model:active-page="page" :pages="10" show-icons rounded />
<te-pagination v-model:active-page="page" :pages="10" size="small" />
<te-pagination v-model:active-page="page" :pages="10" size="large" position="right" />

Vue 3 migration

This used to be :active-page.sync. The .sync modifier was removed in Vue 3; v-model:active-page is its replacement.

Props

PropTypeDefaultDescription
activePagenumber1Current page. Supports v-model:active-page.
pagesnumber3Total number of pages.
pagesToShownumber3How many numbers the window holds.
showIconsbooleanfalseUses « » instead of the text labels.
roundedbooleanfalseCircular page buttons.
size'small' | 'medium' | 'large''medium'Button size.
position'left' | 'center' | 'right''center'Horizontal alignment.
labelPrev / labelNextstring'Prev.' / 'Next'Text of the arrows.
ariaLabelstring'Pagination'Accessible name of the <nav>.

Events

EventPayloadDescription
update:activePagenumberThe page changed.

Released under the MIT License.