react-dropzone打开文件选择器两次

时间:2018-04-05 11:33:00

标签: javascript html reactjs dropzone react-dropzone

我在很长一段时间内遇到了react-dropzone的问题。

首先,让我们直接跳转到视频问题:https://drive.google.com/open?id=1UmWtHbQ9U0LBHxYtZ1YSoXrfsezwH-os

文件选择器窗口在我网站的每个文件输入上打开两次,它不是无限循环,只是两次。

以下是我用于此dropzone的代码:

touch file`ls file* | wc -l`.ext

每次丢弃或甚至单击输入本身时都会发生不需要的事件

如果希望给你们足够的信息,如果你需要更多信息,我将非常乐意分享代码。

3 个答案:

答案 0 :(得分:2)

面对同样的问题,后来找到了解决之道。只需将stopPropagation添加到父div onClick。

enter image description here

答案 1 :(得分:1)

也只是偶然发现,在我的情况下,这与Dropzone被包裹在label中有关。 label passes clicks到后代input s。

作为解决方法,您可以删除父项label(或将其更改为div或其他名称)。

或者,尽管我不建议这样做,但还是使用猴子补丁Dropzone.prototype.onInputElementClick(或子类和替代)。这里没有进一步的说明,以免使人们脚踩脚步。

react-dropzone相关的问题:https://github.com/react-dropzone/react-dropzone/issues/182

答案 2 :(得分:0)

此问题已在react-dropzone version 10.1.3中解决。

我遇到了10.1.0版的问题。一旦将其升级到package.json中的v10.1.3,问题就解决了。

"dependencies": {
  "react-dropzone": "^10.1.3"
}