外观
尺寸
四种内置尺寸:small、medium、large 和 x-large。
import { useState } from "react";import { DatePicker } from "react-date-range-picker-tailwind3";import type { DatePickerSize } from "react-date-range-picker-headless";
const sizes: DatePickerSize[] = ["small", "medium", "large", "x-large"];
function Sizes() { const [values, setValues] = useState<Record<DatePickerSize, Date | null>>({ small: null, medium: null, large: null, "x-large": null, });
return ( <div style={{ display: "flex", flexDirection: "column", gap: 20 }}> {sizes.map((size) => ( <div key={size} style={{ display: "flex", alignItems: "center", gap: 12 }}> <span style={{ width: 60, fontSize: 13, fontWeight: 600, opacity: 0.5, flexShrink: 0 }}> {size} </span> <DatePicker value={values[size]} onChange={(date) => setValues((prev) => ({ ...prev, [size]: date }))} size={size} /> </div> ))} </div> );}small
medium
large
x-large
自定义格式
自定义显示格式字符串。
import { useState } from "react";import { DatePicker } from "react-date-range-picker-tailwind3";
function CustomFormat() { const [value, setValue] = useState<Date | null>(null);
return <DatePicker value={value} onChange={setValue} displayFormat="YYYY/MM/DD" />;}自定义区域设置
使用 headless 包中的 createLocale 提供用于国际化的自定义区域设置。
import { useState } from "react";import { DatePicker } from "react-date-range-picker-tailwind3";import { createLocale } from "react-date-range-picker-headless";
const koLocale = createLocale("ko-KR", { confirm: "확인", cancel: "취소", clear: "초기화", today: "오늘", placeholder: "날짜 선택",});
function CustomLocale() { const [value, setValue] = useState<Date | null>(null);
return <DatePicker value={value} onChange={setValue} locale={koLocale} weekStartsOn="monday" />;}周起始日
更改一周的第一天。默认为 "sunday"。
import { useState } from "react";import { DatePicker } from "react-date-range-picker-tailwind3";
function WeekStartsOn() { const [value, setValue] = useState<Date | null>(null);
return <DatePicker value={value} onChange={setValue} weekStartsOn="monday" />;}显示相邻月份日期
显示相邻月份的日期以填充日历网格。默认为 false。
import { useState } from "react";import { DatePicker } from "react-date-range-picker-tailwind3";
function ShowOutsideDays() { const [value, setValue] = useState<Date | null>(null);
return <DatePicker value={value} onChange={setValue} showOutsideDays />;}标题下拉菜单
使用 captionLayout="dropdown" 将月份/年份导航从箭头切换为下拉菜单。使用 fromYear 和 toYear 设置年份范围。
import { useState } from "react";import { DatePicker } from "react-date-range-picker-tailwind3";
function CaptionDropdown() { const [value, setValue] = useState<Date | null>(null);
return ( <DatePicker value={value} onChange={setValue} captionLayout="dropdown" fromYear={2020} toYear={2030} /> );}