ส่วนท้ายแบบกำหนดเอง
ส่วนท้ายที่จัดเรียงใหม่
จัดเรียงปุ่มส่วนท้ายใหม่และเพิ่มการกระทำพิเศษ เช่น ปุ่ม “วันนี้” ด้วย compound components คุณสามารถควบคุมได้อย่างแม่นยำว่าปุ่มใดจะปรากฏและเรียงลำดับอย่างไร
import { useState } from "react";import { DateTimePicker } from "react-date-range-picker-tailwind3";
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-tailwind3";
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> );}การแทนที่คลาส
ทุกส่วนของ compound partยอมรับ prop className แพ็คเกจ Tailwind v3 ใช้ cn() (ยูทิลิตี้ clsx + twMerge) เพื่อรวมคลาสของคุณเข้ากับค่าเริ่มต้น ดังนั้นยูทิลิตี้ที่ขัดแย้งกันจะได้รับการแก้ไขอย่างถูกต้อง:
import { DatePicker } from "react-date-range-picker-tailwind3";
<DatePicker.Root value={value} onChange={setValue}> <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>;