콘텐츠로 이동
RefineUI

Carousel

이미지 또는 카드 슬라이더 캐러셀.

01Overview
02Motion
03Compose

Overview

Machine-readable contract from Component Spec.

component: carouselexport: Carouselversion: 1attributes: data-refineui=carousel

Anatomy

Partdata-refineui
rootcarousel
controlscarousel-controls
indicatorcarousel-indicator
indicator_hitscarousel-indicator-hits
indicator_thumbcarousel-indicator-thumb
indicatorscarousel-indicators
itemcarousel-item
navcarousel-nav
trackcarousel-track
viewportcarousel-viewport

States

ScopeCategoryValues
componentpseudofocus-visible
componentenvironmentforced-colors, dir

Accessibility

SlotElementRoleRequired attributes
carouseldiv
carousel-itemdivgroup
carousel-indicatorbuttontabaria-selected: required=true, type: boolean

Keyboard

KeyActionNative
ArrowRightnext-trigger
ArrowLeftprevious-trigger
Homefirst-trigger
Endlast-trigger

Focus

SectionPropertyValue
visualrequiredtrue
visualselector:focus-visible

Layout

PropertyValue
directionlogical
rtltrue
npm install @refineui/react @refineui/tokens
import {
Carousel,
CarouselContent,
CarouselItem,
CarouselControls,
CarouselPrevious,
CarouselNext,
CarouselIndicators
} from "@refineui/react";
<Carousel>
<CarouselContent>
<CarouselItem>
<img src="/slide1.jpg" alt="Slide 1" />
</CarouselItem>
<CarouselItem>
<img src="/slide2.jpg" alt="Slide 2" />
</CarouselItem>
<CarouselItem>
<img src="/slide3.jpg" alt="Slide 3" />
</CarouselItem>
</CarouselContent>
<CarouselControls>
<CarouselPrevious />
<CarouselNext />
</CarouselControls>
<CarouselIndicators />
</Carousel>
<Carousel
index={currentIndex}
onIndexChange={setCurrentIndex}
loop
/>
PropDefaultTypeDescription
indexnumber제어형 슬라이드 인덱스(0부터).
defaultIndex0number비제어형 초기 인덱스.
onIndexChange(index: number) => void슬라이드 변경 시 이벤트 핸들러.
loopfalseboolean마지막↔처음으로 순환합니다.

슬라이드 컨테이너.

개별 슬라이드.

내비게이션 버튼 컨테이너.

이전 슬라이드 버튼.

다음 슬라이드 버튼.

슬라이드 점 인디케이터.