Pagination
Постраничная навигация.
total — количество страниц. Без внешнего управления задайте defaultPage, для управляемого режима — page и onChange. siblings определяет, сколько соседних страниц видно вокруг текущей; остальные сворачиваются в многоточие. Для кнопок «назад» и «вперёд» задайте prevAriaLabel и nextAriaLabel на языке интерфейса.
Живой пример
Настройки примера
Использование
'use client';
import { Pagination } from '@prosazhin/pbcomponents';
import { useState } from 'react';
function Example() {
const [page, setPage] = useState(1);
return (
<Pagination
total={20}
page={page}
onChange={setPage}
/>
);
}API компонента
| Prop | Тип / варианты | Назначение | По умолчанию |
|---|---|---|---|
total | number | Количество страниц. | — |
page | number | Текущая страница в управляемом режиме. | — |
defaultPage | number | Начальная страница без внешнего управления. | 1 |
onChange | (page: number) => void | Вызывается при переходе на другую страницу. | — |
siblings | number | Сколько соседних страниц показывать по бокам от текущей. | 1 |
size | 'xs' | 's'xs · s | Размер кнопок. | s |
prevAriaLabel | string | Доступное имя кнопки «назад». | Previous page |
nextAriaLabel | string | Доступное имя кнопки «вперёд». | Next page |
className | string | Класс корневого элемента. | — |
Нативные HTML-атрибуты поддерживаются там, где компонент рендерит соответствующий элемент. Параметры className управляют только оформлением.