Date Field

view
size
placeholder
label
validationState
errorMessage
disabled
hasClear
readOnly
format
pin
minValue
maxValue
startContent
endContent
import {DateField} from '@gravity-ui/date-components';

DateField component es un campo de entrada versátil y conveniente diseñado específicamente para la entrada de fechas en aplicaciones React. Con una interfaz intuitiva y una integración sencilla, es perfecto para cualquier formulario que requiera introducir fecha u hora, como planificadores de eventos, sistemas de reservas o informes basados en datos. Se puede controlar si se establece la value propiedad. O puede estar descontrolado si no establece ningún valor, pero en este caso puede administrar el estado inicial con una propiedad defaultValue opcional. El componente no está controlado de forma predeterminada.

Adición útil

Para establecer las fechas en el formato correcto, es posible que deba incluir ayudantes adicionales de la biblioteca de Date Utils.

import {dateTimeParse} from '@gravity-ui/date-utils';

Apariencia

La apariencia de DateField está controlada por size las pin propiedades view y.

Tamaño

Para controlar el tamaño del DateField uso de la size propiedad. El tamaño predeterminado es m.

<DateField size="s" />
<DateField size="m" />
<DateField size="l" />
<DateField size="xl" />

Ver

normal- la vista principal de DateField (utilizada de forma predeterminada).

<DateField />

clear- vista DateField sin bordes visibles (se puede usar con un envoltorio personalizado)

<DateField view="clear" />

Alfiler

La pin propiedad permite controlar la forma de los bordes derecho e izquierdo y, por lo general, se usa para combinar varios controles en una sola unidad. El valor de la pin propiedad consiste en los nombres de los estilos izquierdo y de borde divididos por un guión, "round-brick" p. ej. Los estilos de arista son: round (predeterminado) brick y clear. circle

<DateField pin="round-brick" />
<DateField pin="brick-brick" />
<DateField pin="brick-round" />

Valor

Valor mínimo y máximo

La minValue propiedad permite especificar la fecha y la hora más tempranas que puede introducir el usuario. Por el contrario, la maxValue propiedad especifica la fecha y la hora más recientes que se pueden introducir. Si ingresas el valor fuera de estos límites, el componente cambia su vista, como en el caso de un estado de validación no válido.

<DateField minValue={dateTimeParse('01.01.2024')} placeholder={"minValue: '01.01.2024'"}/>
<DateField maxValue={dateTimeParse('01.01.2025')} placeholder={"maxValue: '01.01.2025'"}/>

Estados

Discapacitado

El estado en el DateField que no desea que el usuario pueda interactuar con el componente.

<DateField disabled={true} defaultValue={dateTimeParse(new Date())} />

Solo lectura

readOnly es un atributo booleano que, cuando se establece en verdadero, hace que el DateField componente sea inmutable para el usuario. Esto significa que, si bien la entrada mostrará su valor actual, los usuarios no podrán cambiarla.

<DateField readOnly defaultValue={dateTimeParse(new Date())} />

Error

El estado DateField en el que desea indicar una entrada de usuario incorrecta. Para cambiar el DateField aspecto, utilice la validationState propiedad con el "invalid" valor. Se puede agregar un texto de mensaje opcional a través de la errorMessage propiedad. El texto del mensaje se mostrará en el componente.

Error message
<DateField errorMessage="Error message" validationState="invalid" />
<DateField validationState="invalid" />

Contenido adicional

Marcador de posición

Este accesorio le permite proporcionar una breve sugerencia que describa el valor esperado del campo de entrada. Esta sugerencia se muestra en el campo de entrada antes de que el usuario introduzca un valor y desaparece al introducir el texto.

<DateField placeholder='Placeholder' />

Etiqueta

Le permite colocar la etiqueta en la parte izquierda del campo. La etiqueta no puede ocupar más de la mitad del ancho de todo el espacio de DateField.

<DateField label="Label" />
<DateField label="Very long label with huge amount of symbols" />

Botón Borrar

hasClear es un accesorio booleano que brinda a los usuarios la posibilidad de borrar rápidamente el contenido del campo de entrada.

<DateField hasClear />

Iniciar contenido

Le permite agregar contenido a la parte inicial del campo. Se coloca antes que todos los demás componentes.

Start content
<DateField label="Label" startContent={<Label size="s">Start content</Label>} />

Contenido final

Le permite agregar contenido a la parte final del campo. Se coloca después de todos los demás componentes.

End content
<DateField endContent={<Label size="s">End content</Label>} hasClear/>

Formato

El format accesorio es una cadena que define el formato de fecha y hora que el DateField componente aceptará y mostrará. Este accesorio determina cómo se presentan visualmente la fecha y la hora al usuario y cómo se espera que se formatee la entrada del usuario. Formatos disponibles

<DateField format='LTS' />

Zona horaria

timeZone es la propiedad para establecer la zona horaria del valor de la entrada. Más información sobre las zonas horarias

Propiedades

NombreDescripciónTipoPredeterminado
aria, descrita porEl aria-describedby atributo del controlstring
detalles de ariaEl aria-details atributo del controlstring
etiqueta ariaEl aria-label atributo del controlstring
aria - etiquetada porEl aria-labelledby atributo del controlstring
autoFocusEl autofocus atributo del controlboolean
classNameEl nombre de la clase contenedora del controlstring
defaultValueEstablece el valor inicial del componente no controlado.DateTime
inhabilitadoIndica que el usuario no puede interactuar con el controlbooleanfalse
errorMessageTexto de errorReactNode
formatoFormato de la fecha cuando se representa en la entrada. Formatos disponiblesstring
hasClearMuestra el icono para borrar el valor del controlbooleanfalse
identificaciónEl id atributo del controlstring
isDateUnavailableLlamada que se solicita para cada fecha del calendario. Si se devuelve verdadero, significa que la fecha no está disponible.((date: DateTime) => boolean)
etiquetaTexto de ayuda representado a la izquierda del nodo de entradastring
startContentEl nodo del usuario`renderizado antes de la etiqueta y la entradaReact.ReactNode
maxValueLa fecha máxima permitida que puede seleccionar un usuario.DateTime
minValueLa fecha mínima permitida que un usuario puede seleccionar.DateTime
onBlurSe dispara cuando el control pierde el foco. Proporciona un evento de enfoque como argumento de devolución de llamada(e: focusEvent<Element, Element> () => vacío)
onFocusSe dispara cuando el control se enfoca. Proporciona un evento de enfoque como argumento de devolución de llamada(e: focusEvent<Element, Element> () => vacío)
onKeyDownSe dispara cuando se pulsa una tecla. Proporciona un evento de teclado como argumento de devolución de llamada(e: KeyboardEvent<Element>) = nulo)>
onKeyUpSe dispara cuando se suelta una tecla. Proporciona un evento de teclado como argumento de devolución de llamada(e: KeyboardEvent<Element>) = nulo)>
onUpdateSe activa cuando el usuario cambia el valor. Proporciona un nuevo valor como argumento de devolución de llamada(valor: Fecha/hora| nulo) => nulo
alfilerRedondeo de esquinasstring'round-round'
marcador de posiciónTexto que aparece en el control cuando no tiene ningún valor establecidostring
placeholderValueUn marcador de fecha que controla los valores predeterminados de cada segmento cuando el usuario interactúa con ellos por primera vez.DateTimetoday's date at midnigh
readOnlySi el valor del componente es inmutable.booleanfalse
endContentEl nodo del usuario`se representa después del nodo de entrada y el botón de borrarReact.ReactNode
tamañoEl tamaño del control"s" "xl""m"
estiloEstablece el estilo en línea del elemento.CSSProperties
timeZoneEstablece la zona horaria. Más información sobre las zonas horariasstring
validationStateEstado de validación"invalid"
valorEl valor del controlDateTime null
vistaLa vista del control"normal" "clear""normal"