ส่วนท้ายแบบกำหนดเอง

การจัดเรียงส่วนท้ายใหม่

จัดเรียงปุ่มส่วนท้ายใหม่หรือเพิ่มปุ่มใหม่ๆ เช่น TodayButton เนื่องจากแต่ละปุ่มเป็นส่วนประกอบอิสระ คุณจึงสามารถควบคุมลำดับและเลย์เอาต์ได้

import { useState } from "react";
import { DateTimePicker } from "react-date-range-picker-tailwind4";
function CompoundCustomFooter() {
const [value, setValue] = useState<Date | null>(null);
return (
<DateTimePicker.Root value={value} onChange={setValue}>
<DateTimePicker.Trigger />
<DateTimePicker.Content>
<DateTimePicker.Header>
<DateTimePicker.PrevButton />
<DateTimePicker.Title />
<DateTimePicker.NextButton />
</DateTimePicker.Header>
<DateTimePicker.Grid />
<DateTimePicker.TimeSection>
<DateTimePicker.TimePanel target="single" />
</DateTimePicker.TimeSection>
<DateTimePicker.Footer>
<DateTimePicker.TodayButton />
<div style={{ flex: 1 }} />
<DateTimePicker.CancelButton />
<DateTimePicker.ConfirmButton />
</DateTimePicker.Footer>
</DateTimePicker.Content>
</DateTimePicker.Root>
);
}

เลย์เอาต์แบบมินิมอล

ละเว้นส่วนใดๆ ที่คุณไม่ต้องการ ตัวอย่างเช่น การทิ้งส่วนท้ายไปทั้งหมดเพื่อสร้างปฏิทินป๊อปอัปแบบมินิมอล:

import { useState } from "react";
import { DatePicker } from "react-date-range-picker-tailwind4";
function CompoundNoFooter() {
const [value, setValue] = useState<Date | null>(null);
return (
<DatePicker.Root value={value} onChange={setValue}>
<DatePicker.Trigger />
<DatePicker.Content>
<DatePicker.Header>
<DatePicker.PrevButton />
<DatePicker.Title />
<DatePicker.NextButton />
</DatePicker.Header>
<DatePicker.Grid />
</DatePicker.Content>
</DatePicker.Root>
);
}

การแทนที่คลาส

ทุกส่วนประกอบยอมรับ className prop แพ็คเกจ Tailwind v4 ใช้ cn() (ยูทิลิตี้ clsx + twMerge) เพื่อรวมคลาสของคุณเข้ากับค่าเริ่มต้น ดังนั้นยูทิลิตี้ที่ขัดแย้งกันจะถูกแก้ไขอย่างถูกต้อง:

import { DatePicker } from "react-date-range-picker-tailwind4";
<DatePicker.Root value={value} onChange={setValue}>
{/* แทนที่ความกว้างและ padding ของ trigger */}
<DatePicker.Trigger className="min-w-[300px] px-4 py-3" />
<DatePicker.Content className="rounded-2xl shadow-xl">
<DatePicker.Header>
<DatePicker.PrevButton />
<DatePicker.Title className="text-lg" />
<DatePicker.NextButton />
</DatePicker.Header>
<DatePicker.Grid />
</DatePicker.Content>
</DatePicker.Root>;