- components
- ›
- pagination
- ›
- react
Pagination
Navigate between multiple pages of content.
| ID | Name | Country | |
|---|---|---|---|
| 1 | Alicia Ziemann | Ethan36@gmail.com | Kiribati |
| 2 | Robin Robel-Davis | Maddison78@gmail.com | Ecuador |
| 3 | Erin Ferry Jr. | Dale.Torphy@hotmail.com | Aland Islands |
| 4 | Kelli Reichert | Marjory_Franecki86@yahoo.com | Bulgaria |
| 5 | Frankie Kuhic | Arvid43@hotmail.com | Czechia |
Page Size
| ID | Name | Country | |
|---|---|---|---|
| 1 | Franklin Rice | Minnie86@yahoo.com | Germany |
| 2 | Dr. Jose Schaden Jr. | Maudie.Reichert@gmail.com | Algeria |
| 3 | Dave Ziemann | Janiya.Mann@yahoo.com | Poland |
| 4 | Luis Dickens-Adams | Ally39@hotmail.com | Tanzania |
| 5 | Sue McClure | Alexandra54@hotmail.com | United States of America |
Direction
| ID | Name | Country | |
|---|---|---|---|
| 1 | Edward Ondricka | Rozella_Leannon@gmail.com | Monaco |
| 2 | Roy Hyatt | Ruth3@hotmail.com | Finland |
| 3 | Daniel Aufderhar | Wilton_Hoppe@hotmail.com | Mayotte |
| 4 | Orville Zemlak-Kilback | Jaden67@yahoo.com | Tajikistan |
| 5 | Trevor Brekke | Kenton77@gmail.com | Syrian Arab Republic |
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
Root
| Property | Default | Type |
|---|---|---|
ids | - | Partial<{ root: string; ellipsis: (index: number) => string; prevTrigger: string; nextTrigger: string; item: (page: number) => string; }> | undefined The 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 |
RootProvider
| Property | Default | Type |
|---|---|---|
value | - | PaginationApi<PropTypes> |
element | - | ((attributes: HTMLAttributes<"nav">) => Element) | undefinedRender the element yourself |
RootContext
| Property | Default | Type |
|---|---|---|
children | - | (pagination: PaginationApi<PropTypes>) => ReactNode |
FirstTrigger
| Property | Default | Type |
|---|---|---|
element | - | ((attributes: HTMLAttributes<"button">) => Element) | undefinedRender the element yourself |
PrevTrigger
| Property | Default | Type |
|---|---|---|
element | - | ((attributes: HTMLAttributes<"button">) => Element) | undefinedRender the element yourself |
Item
| Property | Default | Type |
|---|---|---|
type | - | "page" |
value | - | number |
element | - | ((attributes: HTMLAttributes<"a">) => Element) | undefinedRender the element yourself |
Ellipsis
| Property | Default | Type |
|---|---|---|
index | - | number |
element | - | ((attributes: HTMLAttributes<"span">) => Element) | undefinedRender the element yourself |
NextTrigger
| Property | Default | Type |
|---|---|---|
element | - | ((attributes: HTMLAttributes<"button">) => Element) | undefinedRender the element yourself |
LastTrigger
| Property | Default | Type |
|---|---|---|
element | - | ((attributes: HTMLAttributes<"button">) => Element) | undefinedRender the element yourself |