【发布时间】:2021-02-05 21:16:25
【问题描述】:
我正在尝试创建一个简单的文件夹上传器(客户端)。最低要求的功能是能够选择文件夹/文件并在浏览器上显示所有文件的信息。我使用了一个简单的输入元素:
const ReadFolder = () => {
const onFileChange = (event: React.ChangeEvent<HTMLInputElement>) => console.log(event.target.files);
return (
<input
type='file'
directory
webkitdirectory
multiple
onChange={onFileChange}
/>
);
}
onFileChange 函数只显示接收文件列表的信息。
它适用于小文件夹,但是当我尝试从我的计算机(具有大型嵌套文件夹层次结构)上传 git 存储库时,浏览器窗口在报告 onChange 事件之前大约 2 分钟无响应。有没有办法避免这种反应迟钝?我可以将此处理推送到后台(或网络工作者)吗?
【问题讨论】:
-
我该怎么做?
-
@NotABot - 如果不了解
onFileChange正在做什么,我认为我们无法为您提供帮助。旁注:onChange={(event: React.ChangeEvent<HTMLInputElement>) => onFileChange(event)}可能只是onChange={onFileChange}。 -
@T.J.Crowder 我已经更新了代码。我认为
onFileChange函数的作用并不重要,因为它在浏览器崩溃之前永远不会收到事件,这是实际问题。无论如何,我已经添加了函数的示例定义,如果您想知道,这个代码 sn-p 也存在问题:(
标签: javascript html fileapi