Gallery
Компонент для создания адаптивного слайдера изображений с поддержкой жестов и автоматической прокрутки.
Автопрокрутка
Компонент поддерживает автопрокрутку слайдов. Для этого нужно использовать свойство timeout
(в миллисекундах)
отличное от нуля.
Зацикленная галерея
Используйте свойство looped
, чтобы список слайдов прокручивался зацикленно.
Кастомизация стрелок навигации
Для кастомизации стрелок навигации используйте следующие свойства:
arrowSize
- контролирует размер стрелки;arrowAreaHeight
- размер активной зоны стрелок. Определяет область вокруг стрелок, реагирующую на взаимодействие пользователя:stretch
- на всю высоту галереиfit
- фиксированная высота
showArrows
- флаг, определяющий нужно ли показывать стрелки. Видимость стрелок также зависит от параметра адаптивностиhasPointer
. Например, на мобильных устройствах стрелки отображаться никогда не будут.
Индикатор прогресса
Для более удобного использования компонента можно включить индикатор прогресса с помощью свойства bullets
:
false
- значение по умолчанию, индикатор скрыт;light
- включает отображение в светлом варианте;dark
- включает отображение в светлом варианте.
Контролируемое состояние
Используйте slideIndex
и onChange
для ручного управления состоянием.
Слайды разных размеров
Если необходимо сделать так, чтобы у каждого слайда была своя ширина, необходимо задать свойство slideWidth="custom"
:
Свойства и методы
Свойство | Описание |
---|---|
align | AlignType По умолчанию: - |
arrowAreaHeight | "stretch" | "fit" Размер активной зоны стрелок (в пикселях).
Определяет область вокруг стрелок, реагирующую на взаимодействие пользователя. В дизайне свойство называется По умолчанию: - |
arrowNextLabel | string Текст для кнопки-стрелки вправо (вперед). Делает ее доступной для ассистивных технологий. По умолчанию: - |
arrowPrevLabel | string Текст для кнопки-стрелки влево (назад). Делает ее доступной для ассистивных технологий. По умолчанию: - |
arrowSize | "s" | "m" По умолчанию: - |
bullets | false | "dark" | "light" По умолчанию: - |
bulletTestId | ((index: number, active: boolean) => string) Передает атрибут По умолчанию: - |
dragDisabled | boolean Позволяет отключить реагирование на тач-события. По умолчанию: - |
getRef | Ref<HTMLElement> По умолчанию: - |
getRootRef | Ref<HTMLDivElement> По умолчанию: - |
hasPointer | boolean По умолчанию: - |
initialSlideIndex | number Индекс слайда по умолчанию. По умолчанию: 0 |
looped | boolean Включает зацикленность слайдов. По умолчанию: - |
nextArrowTestId | string Передает атрибут По умолчанию: - |
onChange | ((current: number) => void) По умолчанию: - |
onDragEnd | ((e: CustomTouchEvent, targetIndex: number) => void) По умолчанию: - |
onDragStart | CustomTouchEventHandler По умолчанию: - |
onNextClick | ((event: MouseEvent<Element, MouseEvent>) => void) Будет вызвано при нажатии на кнопку-стрелку вправо. По умолчанию: - |
onPrevClick | ((event: MouseEvent<Element, MouseEvent>) => void) Будет вызвано при нажатии на кнопку-стрелку влево. По умолчанию: - |
prevArrowTestId | string Передает атрибут По умолчанию: - |
resizeSource | "window" | "element" Тип источника для отслеживания размера:
По умолчанию: - |
showArrows | boolean По умолчанию: - |
slideIndex | number По умолчанию: - |
slideTestId | ((index: number) => string) Передает атрибут По умолчанию: - |
slideWidth | number | LiteralUnion<"custom", string> Размер слайда. Значение По умолчанию: - |
timeout | number При передаче происходит автоматический переход к следующему слайду через переданное время в ms. По умолчанию: 0 |