Я использую пример react-dropzone basi c ( react-dropzone basi c)
import React from 'react';
import {useDropzone} from 'react-dropzone';
function Basic(props) {
const {acceptedFiles, getRootProps, getInputProps} = useDropzone();
const files = acceptedFiles.map(file => (
<li key={file.path}>
{file.path} - {file.size} bytes
</li>
));
return (
<section className="container">
<div {...getRootProps({className: 'dropzone'})}>
<input {...getInputProps()} />
<p>Drag 'n' drop some files here, or click to select files</p>
</div>
<aside>
<h4>Files</h4>
<ul>{files}</ul>
</aside>
</section>
);
}
<Basic />
Это работает, как ожидалось, пока я не нажму кнопку click метод добавления файла. При добавлении файла с помощью кнопки acceptedFiles
не регистрируйте файл (я добавил обработчик onChange, и event.target.files показывает файл, поэтому он определенно добавляется к общему FileList
).
Из-за этого я не могу отобразить файл, добавленный с помощью подробностей щелчка в Files <ul>
, как я бы с перетаскиваемым файлом. Я предполагаю, что то же самое будет верно для fileRejections
, но я еще не реализовал это.
Надеюсь, мне не хватает чего-то очевидного, поскольку я предполагаю, что dropzone обрабатывает и перетаскивание, и поведение щелчка?
Оцените, что кто-то указал мне правильное направление, если возможно.