在反应组件中未调用拖动端的 Firefox

Posted

技术标签:

【中文标题】在反应组件中未调用拖动端的 Firefox【英文标题】:Firefox on drag end is not called in a react component 【发布时间】:2016-01-30 18:40:10 【问题描述】:

我正在尝试使用 React 组件中的 html5 拖放 api 实现一个非常基本的拖放功能。我只需要在拖动开始和结束时得到通知。虽然这在 Chrome 和 IE11 中运行良好,但我在最新的 Firefox 中没有收到任何关于拖动结束的通知。你可以在这里看到一个例子

http://jsbin.com/lifico/edit?js,console,output

有什么想法吗?

【问题讨论】:

【参考方案1】:

在 Firefox 中你需要在拖动开始时在事件的 dataTransfer 成员中设置一些数据。在您的情况下,您可以设置一个空字符串:

onDragStart=(e) => 
             e.dataTransfer.setData('text',''); 
             console.log('drag start');

请参阅MDN documentation。

【讨论】:

是的,这为我解决了问题。不幸的是,我不能投票作为答案 只要解决了您的问题就可以了。干杯。

以上是关于在反应组件中未调用拖动端的 Firefox的主要内容,如果未能解决你的问题,请参考以下文章

反应 eslint 错误中未使用的状态字段

可拖动的反应 div:指数运动

如何在Angular 8中未调用的组件之间传递数据[重复]

在反应中选择并拖动多行

React Context API:消费者组件中未定义值

reactjs中未从父级调用子组件函数