Ir al contenido

File upload

Zona para soltar archivos + lista de archivos.

Navegadores
Chrome 123+Firefox 121+Safari 17.5+
Nivel
1
Tamaño comprimido
2.27 kB
Presupuesto de diseño forzado
0 ms
Presupuesto de axe
0
Compatible con SSR
Sí
Contrato publicado
Entorno de pruebas

Zona de pruebas

File upload

Attachments

Drop files here, or choose files above.

    Up to 3 files · 5 MB each

    API

    FileUpload.Root

    PropTipoPredeterminadoDescripción
    childrenReactNode—Partes de FileUpload: input oculto, activador, zona para soltar archivos y lista.
    valuereadonly File[]—Archivos actuales; hace que el componente sea controlado.
    defaultValuereadonly File[][]Archivos iniciales del componente no controlado.
    onValueChange(files: File[]) => void—Se llama con los archivos aceptados cada vez que cambia la selección.
    onReject(rejections: FileRejection[]) => void—Se llama con los archivos que no superaron la validación y el motivo.
    acceptstring[][]Tipos de archivo aceptados, como extensiones o tipos MIME.
    maxFilesnumber—Número máximo de archivos que se pueden mantener a la vez.
    maxSizenumber—Tamaño máximo de archivo aceptado, en bytes.
    minSizenumber—Tamaño mínimo de archivo aceptado, en bytes.
    multiplebooleanfalsePermite seleccionar más de un archivo.
    disabledbooleanfalseDesactiva el selector, la zona para soltar archivos y los botones para quitarlos.

    FileUpload.HiddenInput

    PropTipoPredeterminadoDescripción
    classNamestring—Clase aplicada al input de archivo nativo.

    FileUpload.Trigger

    PropTipoPredeterminadoDescripción
    childrenReactNode—Contenido del control que abre el selector de archivos.
    classNamestring—Clase aplicada al elemento activador.
    renderReactElement | ((props, state) => ReactElement)—Reemplaza el elemento renderizado y conserva las conexiones de comportamiento y accesibilidad.

    FileUpload.Dropzone

    PropTipoPredeterminadoDescripción
    childrenReactNode—Contenido de la zona donde se sueltan archivos.
    classNamestring—Clase aplicada al elemento de la zona para soltar archivos.
    renderReactElement | ((props, state) => ReactElement)—Reemplaza el elemento renderizado y conserva las conexiones de comportamiento y accesibilidad.

    FileUpload.List

    PropTipoPredeterminadoDescripción
    childrenReactNode | ((files: readonly File[]) => ReactNode)—Renderiza los archivos aceptados de la lista activa. Los cambios del valor controlado y los restablecimientos externos se reflejan de inmediato.
    classNamestring—Clase aplicada al elemento de lista.

    FileUpload.Item

    PropTipoPredeterminadoDescripción
    childrenReactNode—Contenido que describe el archivo, como su nombre y tamaño.
    classNamestring—Clase aplicada al elemento de la lista.
    index*number—Posición del archivo que representa este elemento.
    renderReactElement | ((props, state) => ReactElement)—Reemplaza el elemento renderizado y conserva las conexiones de comportamiento y accesibilidad.

    FileUpload.ItemRemove

    PropTipoPredeterminadoDescripción
    classNamestring—Clase aplicada al botón para quitar.
    index*number—Posición del archivo que quita este botón.

    FileRejection

    PropTipoPredeterminadoDescripción
    file*File—El archivo que no se aceptó.
    reason*"accept" | "max-size" | "max-files"—La regla que no cumplió el archivo.

    Teclado

    TeclaAcción
    Enter / SpaceAbrir el selector de archivos desde Trigger o quitar un archivo con foco
    TabMoverse entre el activador del selector y los controles para quitar archivos

    Accesibilidad

    Dale a HiddenInput una etiqueta accesible. List recibe los archivos aceptados y renderiza sus nombres, tamaños y botones etiquetados para quitarlos. Root admite un valor controlado, maxFiles acumulativo y validación de maxSize y accept; onReject informa los archivos rechazados. Las raíces desactivadas bloquean el selector, la acción de soltar archivos y su eliminación. El manejo de archivos requiere hidratación.

    Puntos de estilo

    data-uiify-file-uploaddata-partdata-disableddata-state
    Esta página se tradujo automáticamente y aún no se ha revisado.