Comportamiento
Cerrar al Seleccionar
Cuando shouldCloseOnSelect está habilitado, el selector se confirma y cierra automáticamente cuando se hace clic en una fecha.
import { useState } from "react";import { DateTimePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function ShouldCloseOnSelect() { const [value, setValue] = useState<Date | null>(null);
return ( <DateTimePicker value={value} onChange={setValue} shouldCloseOnSelect time={{ minuteStep: 5 }} /> );}Múltiples Meses
Muestra múltiples meses uno al lado del otro.
import { useState } from "react";import { DateTimePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function MultiMonth() { const [value, setValue] = useState<Date | null>(null);
return ( <DateTimePicker value={value} onChange={setValue} numberOfMonths={2} time={{ minuteStep: 5 }} /> );}Integración con Formularios
Usa la prop name para incluir un input oculto para el envío de formularios nativos.
💡 Tip
El estilo del botón de envío en este ejemplo es personalizado — la librería solo proporciona el selector de fechas.
import { type SubmitEvent, useState } from "react";import { DateTimePicker } from "react-date-range-picker-styled";import "react-date-range-picker-styled/rdrp-styles.css";
function FormIntegration() { const [value, setValue] = useState<Date | null>(null);
const handleSubmit = (e: SubmitEvent<HTMLFormElement>) => { e.preventDefault(); const formData = new FormData(e.currentTarget); const appointment = formData.get("appointment"); alert(`Submitted datetime: ${typeof appointment === "string" ? appointment : ""}`); };
return ( <form onSubmit={handleSubmit}> <DateTimePicker value={value} onChange={setValue} name="appointment" /> <button type="submit" style={{ marginTop: 8 }}> Submit </button> </form> );}