Field
Envoltura de etiqueta, control y error.
- Navegadores
- Chrome 123+Firefox 121+Safari 17.5+
- Nivel
- 0
- Tamaño comprimido
- 668 B
- Presupuesto de diseño forzado
- 0 ms
- Presupuesto de axe
- 0
- Compatible con SSR
- Sí
- Contrato publicado
- Entorno de pruebas
Zona de pruebas
Field
Default
Your display name
Invalid
Enter a valid email address
Password
Use at least eight characters.
Message
Up to 500 characters.
Disabled
Read only
API
Field.Root
| Prop | Tipo | Predeterminado | Descripción |
|---|---|---|---|
id* | string | — | Id estable que cada parte recibe como fieldId para conectar etiqueta, control, descripción y error en el marcado del servidor. |
invalid | boolean | false | Marca el campo como no válido y expone data-invalid para aplicar estilos. |
required | boolean | false | Marca el campo como obligatorio y expone data-required para aplicar estilos. |
disabled | boolean | false | Marca el campo como desactivado y expone data-disabled para aplicar estilos. |
name | string | — | Se acepta por compatibilidad con la API; el nombre corresponde al control y no se renderiza en la envoltura. |
render | ReactElement | ((props, state) => ReactElement) | — | Reemplaza el elemento renderizado y conserva las conexiones de comportamiento y accesibilidad. |
Field.Label
| Prop | Tipo | Predeterminado | Descripción |
|---|---|---|---|
fieldId* | string | — | El mismo id que recibe Field.Root; resuelve el htmlFor que apunta al control. |
disabled | boolean | false | Marca la etiqueta como desactivada y expone data-disabled para aplicar estilos. |
required | boolean | false | Marca la etiqueta como obligatoria y expone data-required para aplicar estilos. |
Field.Control
| Prop | Tipo | Predeterminado | Descripción |
|---|---|---|---|
as | ElementType | "div" | Usa input, textarea, select o un control personalizado. Se pasan las props nativas, los manejadores de eventos, style y ref. |
type / name / autoComplete / minLength / maxLength / pattern / readOnly | native control props | — | Las opciones de input corresponden a Field.Control, incluido type="password". Se conserva la semántica estándar de validación y FormData. |
fieldId* | string | — | El mismo id que recibe Field.Root; resuelve el id del control y sus conexiones aria-labelledby y aria-describedby. |
disabled | boolean | false | Pasa disabled nativo a input, textarea y select, y expone data-disabled. |
invalid | boolean | false | Establece aria-invalid y añade el mensaje de error al aria-describedby del control. |
required | boolean | false | Pasa required nativo a input, textarea y select, y establece aria-required. |
render | ReactElement | ((props, state) => ReactElement) | — | Reemplaza el elemento renderizado y conserva las conexiones de comportamiento y accesibilidad. |
Field.Description
| Prop | Tipo | Predeterminado | Descripción |
|---|---|---|---|
fieldId* | string | — | El mismo id que recibe Field.Root; resuelve el id de la descripción al que apunta el control. |
disabled | boolean | false | Marca la descripción como desactivada y expone data-disabled para aplicar estilos. |
Field.Error
| Prop | Tipo | Predeterminado | Descripción |
|---|---|---|---|
fieldId* | string | — | El mismo id que recibe Field.Root; resuelve el id del error al que apunta el control cuando no es válido. |
invalid | boolean | false | Renderiza el mensaje de error; la parte no renderiza nada mientras este valor sea false. |
Teclado
| Tecla | Acción |
|---|---|
| Tab | Llevar el foco al control o sacarlo de él |
| Enter / Space | Activar cuando tiene el foco (controles de tipo botón) |
Accesibilidad
Usa HTML semántico siempre que es posible. Inspecciona el marcado renderizado en el entorno de pruebas: ARIA se añade solo cuando los elementos nativos no bastan.
Puntos de estilo
data-disabled