캘린더
캘린더 (Calendar)
하나의 날짜나 날짜 범위를 선택하기 위한 인라인 캘린더를 표시할 때 사용하는 컴포넌트예요. DatePicker의 인라인 변형이에요.
출처: 문서
본문
사용법 (Usage)
캘린더는 DatePicker 컴포넌트의 인라인 변형이에요. DatePicker.Root에 inline prop을 설정하면 인풋, positioner, content 파트 없이 캘린더를 페이지에 직접 렌더링해요.
import { DatePicker } from "@chakra-ui/react"
<DatePicker.Root inline>
<DatePicker.View view="day">
<DatePicker.Header />
<DatePicker.DayTable />
</DatePicker.View>
<DatePicker.View view="month">
<DatePicker.Header />
<DatePicker.MonthTable />
</DatePicker.View>
<DatePicker.View view="year">
<DatePicker.Header />
<DatePicker.YearTable />
</DatePicker.View>
</DatePicker.Root>
예제 (Examples)
크기 (Sizes)
size prop을 사용해 캘린더 셀과 컨트롤 크기를 제어할 수 있어요.
바깥 날짜 숨기기 (Hide Outside Days)
hideOutsideDays prop을 설정하면 현재 월에 속하지 않는 날짜를 숨길 수 있어요.
제어 (Controlled)
value와 onValueChange prop을 사용해 인라인 캘린더를 제어할 수 있어요.
기본값 (Default Value)
defaultValue prop을 사용해 처음에 선택된 날짜를 설정할 수 있어요.
범위 선택 (Range Selection)
selectionMode prop을 "range"로 설정하면 날짜 범위를 선택할 수 있어요.
다중 선택 (Multi Selection)
selectionMode prop을 "multiple"로 설정하면 여러 날짜를 선택할 수 있어요.
최소·최대 (Min and Max)
min과 max prop을 사용해 선택 가능한 날짜 범위를 제한할 수 있어요.
선택 불가 날짜 (Unavailable Dates)
isDateUnavailable prop을 사용해 커스텀 로직에 따라 특정 날짜를 비활성화할 수 있어요.
여러 달 (Multiple Months)
numOfMonths prop을 사용해 여러 달을 나란히 표시할 수 있어요.
로케일 (Locale)
locale prop을 사용해 다양한 언어와 지역 형식에 맞게 커스터마이즈할 수 있어요.
최대 선택 날짜 수 (Max Selected Dates)
maxSelectedDates prop을 selectionMode="multiple"과 함께 사용해 선택할 수 있는 날짜 수를 제한할 수 있어요.
주 번호 (Week Numbers)
showWeekNumbers prop을 사용해 캘린더 행 옆에 ISO 주 번호를 표시할 수 있어요.
예약 시간 그리드 (Booking Time Grid)
인라인 캘린더와 스크롤 가능한 시간 슬롯 그리드를 갖춘 Calendly 스타일 예약 인터페이스 예시예요.
Props
캘린더는 DatePicker와 동일한 props와 구조(anatomy)를 공유해요. 전체 prop 참조는 DatePicker 문서를 참고하세요.
더 알아보기 (Learn more)
- DatePicker — 캘린더의 부모 컴포넌트