Pagination
Reactive API의 currentPanelIndex, totalPanelCount, moveTo를 사용하여 캐러셀과 실시간으로 동기화되는 도트 페이지네이션 UI를 구현합니다.
- JavaScript
- React
- Vue@3
요약
주요 API
| 속성 / 메서드 | 타입 | 설명 |
|---|---|---|
currentPanelIndex | number | 현재 활성화된 패널 인덱스 |
totalPanelCount | number | 전체 패널 수 |
moveTo | (i: number) => Promise | 특정 패널로 이동 |
동작
| 상태 | 도트 스타일 |
|---|---|
| 현재 패널 | 활성화 (강조 표시) |
| 다른 패널 | 기본, 클릭하여 이동 |
상세 설명
동작 원리
totalPanelCount를 기반으로 도트 버튼을 렌더링currentPanelIndex에 해당하는 도트를 강조 표시- 도트 클릭 시
moveTo(index)를 호출하여 해당 패널로 이동 - 사용자가 드래그하여 새 패널로 이동하면
currentPanelIndex가 자동으로 업데이트되고 도트가 다시 동기화
관련 옵션
align: "center": 중앙 정렬은 페이지네이션을 가장 직관적으로 느끼게 합니다.circular: true: 순환 모드에서는 첫 번째와 마지막 패널이 연결되어 도트가 매끄럽게 순환합니다.
사용 시나리오
이런 경우에 사용하세요
- 배너 / 히어로 슬라이더 위치 표시기
- 이미지 갤러리 페이지 표시기
- 모바일 온보딩 단계 도트
관련 링크
관련 API
currentPanelIndex: 활성 패널 인덱스moveTo: 패널로 이동
관련 데모
- Prev / Next: 이전/다음 버튼 네비게이션
- Progress Bar: 스크롤 진행률 표시기