input
Upload

InputUpload

El componente InputUpload permite a los usuarios cargar archivos, proporcionando opciones de previsualización y una interfaz personalizable para seleccionar o arrastrar y soltar archivos.

Ejemplo

Importación

Para importar el componente InputUpload, se puede hacer desde fenextjs

import { InputUpload } from "fenextjs";

Parámetros

ParámetroTipoRequeridoDefaultDescripcion
titleReactNodeno"Drag and drop here"Título mostrado en el área de carga de archivos.
textReactNodeno"Drag and drop your file or template here."Texto adicional que se muestra en el área de carga de archivos.
titleFileReactNodenoundefinedTítulo personalizado que se muestra al seleccionar un archivo.
textFileReactNodenoundefinedTexto personalizado que se muestra al seleccionar un archivo.
textPreviewReactNodeno"Preview File"Texto que se muestra para la previsualización del archivo.
iconReactNodeno<Upload2 />Icono que se muestra en el área de carga.
iconFileReactNodeno""Icono que se muestra junto con el archivo cargado.
btnReactNodeno"Choose File"Texto o componente personalizado para el botón de selección de archivo.
tagPreview"embed" | "img"no"embed"Etiqueta HTML usada para mostrar la previsualización del archivo. Puede ser 'embed' o 'img'.
customPreview(data: FileProps) => ReactNodenoundefinedFunción personalizada para renderizar la previsualización del archivo.
loaderbooleannofalseDetermina si se muestra un indicador de carga mientras se sube el archivo.
iconLoaderReactNodeno<LoaderSpinner />Icono o componente que se muestra mientras el archivo está en proceso de carga.
parseProgress(e: number) => stringno(e) => Uploading . . . $\{e.toFixed(0)\}%Función que permite personalizar el texto de progreso de la carga de archivos.
onChange(file: File) => voidnoundefinedFunción que se ejecuta cuando el archivo cambia, recibe el archivo seleccionado.

Storybook

Para ver el storybook del componente lo puede hacer con este link (opens in a new tab)

Usos

  • InputUpload básico
<InputUpload />
  • InputUpload con texto personalizado
<InputUpload
  title="Sube tu archivo aquí"
  text="Arrastra y suelta tu archivo o selecciónalo desde tu dispositivo"
/>
  • InputUpload con previsualización de imagen
<InputUpload tagPreview="img" />
  • InputUpload con un botón personalizado
<InputUpload btn={<Button>Cargar Archivo</Button>} />