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 |