- components
- ›
- pagination
- ›
- react
Pagination
Navigate between multiple pages of content.
ID | Name | Country | |
---|---|---|---|
1 | Lynn Walsh | Wilbert_Mohr@hotmail.com | Lebanon |
2 | Anna Casper | Marianna.Gislason85@gmail.com | Thailand |
3 | Sandy Herzog | Nyasia_Durgan24@gmail.com | Nepal |
4 | Felipe Rempel | Marcellus88@gmail.com | Saint Kitts and Nevis |
5 | Ebony Ernser | Lindsey.Halvorson6@hotmail.com | Hungary |
6 | Darnell Skiles | Micheal.Nienow@gmail.com | El Salvador |
7 | Lance Morar | Susanna.Schultz87@gmail.com | Belize |
8 | Russell Cummings | Emiliano43@hotmail.com | Luxembourg |
9 | Lucas Lockman | Leonel_Rohan@yahoo.com | Turks and Caicos Islands |
10 | Ms. Vera Lehner | Dixie65@gmail.com | Ghana |
Page Size
ID | Name | Country | |
---|---|---|---|
1 | Krista Bednar | Beverly15@hotmail.com | Nauru |
2 | Keith Crona | Lafayette98@gmail.com | Virgin Islands, British |
3 | Ms. Tami Beer | Jazmyn45@hotmail.com | Armenia |
4 | Della Daugherty | Ayla16@gmail.com | Burundi |
5 | Kara Flatley-Waters | Haylie95@yahoo.com | Zimbabwe |
6 | Patti Auer Jr. | Darren_Conroy67@yahoo.com | Czechia |
7 | Mathew Smith-Ryan | Angus.VonRueden@hotmail.com | Mongolia |
8 | Ms. Elena McCullough IV | Chelsea_Wehner-Medhurst31@gmail.com | South Africa |
9 | Cory Keeling | Kassandra59@hotmail.com | Nepal |
10 | Devin Zulauf | Zechariah_McCullough28@yahoo.com | Mayotte |
Direction
ID | Name | Country | |
---|---|---|---|
1 | Doris Ullrich | Jackson22@gmail.com | Sri Lanka |
2 | Mr. James Runolfsson | Brock9@gmail.com | Saint Vincent and the Grenadines |
3 | Randal Prohaska | Kaycee_Marvin50@yahoo.com | Guinea-Bissau |
4 | Ebony Farrell | Lucinda_Macejkovic79@yahoo.com | Oman |
5 | Curtis Schuppe | Elna.Rohan96@hotmail.com | Portugal |
6 | Miss Julia Corkery II | Hannah.Corwin@yahoo.com | Uruguay |
7 | Walter Waters Sr. | Alvera98@gmail.com | Cocos (Keeling) Islands |
8 | Earl Krajcik | Zander.Pollich@gmail.com | Singapore |
9 | Mrs. Jodi McClure | Carmen34@gmail.com | Germany |
10 | Shawna Gerlach | Anabelle_Marvin@gmail.com | Argentina |
Total Count
For server-side pagination, your data source may be truncated. Make sure to specify the total records using count
.
{ "data": [...], "pagination": { "page": 1, "limit": 10, "count": 500, }}
<Pagination page={response.pagination.page} count={response.pagination.count} pageSize={response.pagination.limit}> ...</Pagination>
API Reference
Ellipsis
btn preset-tonal pointer-events-none
Property | Default | Type |
---|---|---|
index | - | number |
element | - | ((attributes: HTMLAttributes<"span">) => Element) | undefinedRender the element yourself |
Item
btn preset-tonal cursor-pointer select-none data-selected:preset-filled
Property | Default | Type |
---|---|---|
type | - | "page" |
value | - | number |
element | - | ((attributes: HTMLAttributes<"a">) => Element) | undefinedRender the element yourself |
NextTrigger
btn preset-tonal
Property | Default | Type |
---|---|---|
element | - | ((attributes: HTMLAttributes<"button">) => Element) | undefinedRender the element yourself |
PrevTrigger
btn preset-tonal
Property | Default | Type |
---|---|---|
element | - | ((attributes: HTMLAttributes<"button">) => Element) | undefinedRender the element yourself |
RootProvider
Property | Default | Type |
---|---|---|
value | - | PaginationApi<PropTypes> |
element | - | ((attributes: HTMLAttributes<"nav">) => Element) | undefinedRender the element yourself |
Root
inline-flex gap-2 p-2 rounded-container preset-outlined-surface-200-800 w-fit
Property | Default | Type |
---|---|---|
ids | - | Partial<{ root: string; ellipsis: (index: number) => string; prevTrigger: string; nextTrigger: string; item: (page: number) => string; }> | undefinedThe ids of the elements in the accordion. Useful for composition. |
translations | - | IntlTranslations | undefinedSpecifies the localized strings that identifies the accessibility elements and their states |
count | - | number | undefinedTotal number of data items |
pageSize | - | number | undefinedThe controlled number of data items per page |
defaultPageSize | 10 | number | undefinedThe initial number of data items per page when rendered. Use when you don't need to control the page size of the pagination. |
siblingCount | 1 | number | undefinedNumber of pages to show beside active page |
page | - | number | undefinedThe controlled active page |
defaultPage | 1 | number | undefinedThe initial active page when rendered. Use when you don't need to control the active page of the pagination. |
onPageChange | - | ((details: PageChangeDetails) => void) | undefinedCalled when the page number is changed |
onPageSizeChange | - | ((details: PageSizeChangeDetails) => void) | undefinedCalled when the page size is changed |
type | "button" | "button" | "link" | undefinedThe type of the trigger element |
getPageUrl | - | ((details: PageUrlDetails) => string) | undefinedFunction to generate href attributes for pagination links. Only used when `type` is set to "link". |
dir | "ltr" | "ltr" | "rtl" | undefinedThe document's text/writing direction. |
getRootNode | - | (() => ShadowRoot | Node | Document) | undefinedA root node to correctly resolve document in custom environments. E.x.: Iframes, Electron. |
element | - | ((attributes: HTMLAttributes<"nav">) => Element) | undefinedRender the element yourself |
RootContext
Property | Default | Type |
---|---|---|
children | - | (pagination: PaginationApi<PropTypes>) => ReactNode |