制約
最小日数と最大日数
minDays と maxDays (両端を含む) を使って、期間の長さを制限します。ユーザーは minDays より短い、または maxDays より長い期間を確定できません。
import { useState } from "react";import { DateRangePicker } from "react-date-range-picker-tailwind4";
function MinMaxDays() { const [value, setValue] = useState<{ start: Date | null; end: Date | null }>({ start: null, end: null, });
return <DateRangePicker value={value} onChange={setValue} minDays={3} maxDays={14} />;}無効な日付
isDateUnavailable を使って、特定の日付を動的に無効化します。無効化された日付は、期間の開始日または終了日として選択できません。
import { useState } from "react";import { DateRangePicker } from "react-date-range-picker-tailwind4";
function DisabledDates() { const [value, setValue] = useState<{ start: Date | null; end: Date | null }>({ start: null, end: null, });
const isDateUnavailable = (date: Date) => { const day = date.getDay(); return day === 0 || day === 6; // Disable weekends };
return ( <DateRangePicker value={value} onChange={setValue} isDateUnavailable={isDateUnavailable} /> );}単一日付の許可
デフォルトでは、開始日と終了日が同じ期間が許可されています。少なくとも2つの異なる日付を必須にするには、allowSingleDateInRange={false} を設定します。
import { useState } from "react";import { DateRangePicker } from "react-date-range-picker-tailwind4";
function AllowSingleDate() { const [value, setValue] = useState<{ start: Date | null; end: Date | null }>({ start: null, end: null, });
return <DateRangePicker value={value} onChange={setValue} allowSingleDateInRange={false} />;}