import { useEffect, useState } from "react"; import { FileUploader } from "react-drag-drop-files"; const fileTypes = ["JPG", "PNG", "GIF"]; function DragDrop({setPreview ,file, setFile}) { const handleChange = (file) => { setFile(file); }; useEffect(()=>{ if(!file) return; const objectUrl = URL.createObjectURL(file) setPreview(objectUrl) // free memory when ever this component is unmounted return () => URL.revokeObjectURL(objectUrl) },[file]) return ( ); } export default function Upload({setFetchKey, daySelected}){ const [file, setFile] = useState(null); const [preview, setPreview] = useState(null); const [note,setNote] = useState(undefined) const [rating,setRating] = useState(1) function uploadFile(){ const formData = new FormData(); formData.append("file", file); formData.append("date", daySelected) formData.append("note", note) formData.append("rating", rating) fetch("/api/days", { method: "POST", body: formData, }).then(() => { setFile(null); setPreview(null); setNote(undefined); setRating(1); setFetchKey(Math.random()*10) }); } return(
{preview ? preview : null}

{ uploadFile() }}>Upload

) }