캐러셀
캐러셀 (Carousel)
컨테이너 안에서 일련의 시각적 콘텐츠를 순환하며 보여줄 때 사용하는 컴포넌트예요. 슬라이드를 넘기며 여러 콘텐츠를 탐색할 수 있어요.
출처: 문서
본문
사용법 (Usage)
import { Carousel } from "@chakra-ui/react"
<Carousel.Root>
<Carousel.ItemGroup>
<Carousel.Item />
</Carousel.ItemGroup>
<Carousel.Control>
<Carousel.AutoplayTrigger>
<Carousel.AutoplayIndicator />
</Carousel.AutoplayTrigger>
<Carousel.PrevTrigger />
<Carousel.Indicators />
<Carousel.NextTrigger />
<Carousel.ProgressText />
</Carousel.Control>
</Carousel.Root>
단축 기능 (Shortcuts)
Carousel 컴포넌트는 자주 쓰이는 패턴을 위한 편리한 단축 기능도 제공해요.
Carousel.Indicators
Carousel.Indicators 단축 기능은 슬라이드 수에 따라 전체 인디케이터 세트를 자동으로 렌더링해요.
<Carousel.IndicatorGroup>
{Array.from({ length: items.length }, (_, index) => (
<Carousel.Indicator key={index} index={index} />
))}
</Carousel.IndicatorGroup>
각 인디케이터를 커스터마이즈할 필요가 없다면, 이렇게 더 간결하게 쓸 수도 있어요:
<Carousel.Indicators />
예제 (Examples)
제어 (Controlled)
page와 onPageChange prop을 사용해 활성 캐러셀 페이지를 프로그래밍 방식으로 제어할 수 있어요.
스토어 (Store)
또는 useCarousel 훅을 사용해 캐러셀 스토어를 만들고, 이를 Carousel.RootProvider 컴포넌트에 전달해 완전한 프로그래밍 방식 제어를 할 수 있어요.
화살표 (Arrows)
Carousel.PrevTrigger와 Carousel.NextTrigger 컴포넌트를 사용해 슬라이드 사이를 이동하는 화살표를 만들 수 있어요.
인디케이터 (Indicators)
Carousel.Indicators 컴포넌트를 사용해 사용자가 캐러셀의 진행 상태를 파악하고 특정 슬라이드로 이동할 수 있게 하는 시각적 인디케이터를 렌더링할 수 있어요.
썸네일 인디케이터 (Thumbnail Indicators)
이미지 썸네일을 커스텀 인디케이터로 사용하는 예시예요.
간격 (Spacing)
spacing prop을 사용해 슬라이드 사이의 간격을 제어할 수 있어요.
가변 크기 (Variable Size)
autoSize prop을 사용해 가로/세로 크기가 다른 슬라이드 항목을 허용할 수 있어요.
세로 (Vertical)
orientation prop을 vertical로 설정하면 캐러셀을 세로 슬라이더로 변환할 수 있어요.
마우스 드래그 (Mouse Drag)
allowMouseDrag prop을 사용해 캐러셀에서 마우스 드래그를 활성화할 수 있어요.
자동 재생 (Autoplay)
Carousel.Root 컴포넌트에 autoplay prop을 전달하면 캐러셀이 슬라이드 사이를 자동으로 이동해요.
라이트박스 (Lightbox)
Carousel 컴포넌트를 Dialog 컴포넌트와 조합해 라이트박스를 만들 수 있어요.
이미지 캐러셀 (Image Carousel)
제품 쇼케이스를 위한 이미지 캐러셀을 만드는 예시예요.
속성 카드 (Property Card)
Carousel 컴포넌트를 다른 컴포넌트와 조합해 속성 카드 캐러셀을 만드는 예시예요.
Props
Root
ItemGroup
Item
Control
탐색기 (Explorer)
Carousel 컴포넌트의 파트들을 인터랙티브하게 탐색해 보세요. 사이드바에서 파트를 클릭하면 미리보기에서 해당 파트가 강조 표시돼요.
더 알아보기 (Learn more)
- Ark UI 캐러셀 — 캐러셀의 동작 로직