import {useEffect, useState} from "react"; import {useDropzone} from "react-dropzone"; import {Box, Typography} from "@mui/material"; export const MyDropzone = ({onLoad}) => { const [files, setFiles] = useState([]); const {getRootProps, getInputProps, isDragActive} = useDropzone({ accept: 'image/*', onDrop: acceptedFiles => { setFiles(acceptedFiles.map(file => Object.assign(file, { preview: URL.createObjectURL(file) }))); }}) const thumbs = files.map(file => ( {file.name} )); useEffect(() => { files.forEach(file => URL.revokeObjectURL(file.preview)); onLoad(files) }, [files]); return (
{isDragActive ? Drop the file here ... : Drag 'n' drop image files here, or click to select file }
) }