캘린더

캘린더 (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)