26 Como instalar Dropzone.js para subir archivos en el curso de LARAVEL (PHP y MySql) FullStack

Duración: 12 min
Módulo: 📤 Carga y Almacenamiento de Archivos Lección 1 de 4

Descripción

🚀 Lección 26: Cómo Instalar Dropzone.js para Subir Archivos

Este capítulo se centra en el diseño frontend para el cargador de archivos y la instalación de la librería Dropzone.js, un componente que permite arrastrar y soltar archivos fácilmente.

🖼️ Diseño de la Interfaz de Subida

  • Botón "Subir Archivos": Se añade un nuevo botón en la vista de la subcarpeta (show.blade.php), junto a "Nueva Carpeta" y "Volver", con el icono upload para indicar su función [01:30].
  • Ventana Modal de Carga: El botón activa un nuevo modal (modalCargarArchivos) que contendrá el formulario de subida de archivos [03:26].
  • Estructura del Formulario: Se inicia la creación del formulario dentro del modal. Este debe incluir:
    • La protección CSRF (@csrf).
    • El método POST.
    • El atributo enctype="multipart/form-data" para permitir la subida de archivos binarios [06:04].

📥 Integración de Dropzone.js

  • Concepto de Dropzone.js: Es una librería de JavaScript que facilita la carga de archivos mediante la función de arrastrar y soltar, mejorando la interacción del usuario [04:05].
  • Instalación vía CDN: Se integran los archivos de estilo (.css) y el script (.js) de Dropzone.js mediante enlaces CDN en la vista [04:45].
  • Clases y Estructura:
    • Se añade la clase dropzone al elemento <form> para activar la librería [06:12].
    • Se añade un <div> con la clase fallback de Dropzone.js, que contiene el input de tipo file (<input type="file" multiple>) [06:54].
  • Personalización con JavaScript: Se añade un bloque de script para configurar Dropzone:
    • Se define el nombre del parámetro que llevará el archivo (paramName: 'file') [09:09].
    • Se traduce el mensaje de arrastrar y soltar a español (dictDefaultMessage) [09:38].

La implementación termina con una demostración del nuevo modal, que ahora muestra la interfaz de Dropzone.js con el texto personalizado, y la capacidad de arrastrar archivos para comenzar a cargarlos [11:11], aunque la lógica del backend (la ruta y el controlador) aún está pendiente.