首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >拖放dataTransfer.getData总是得到空字符串

拖放dataTransfer.getData总是得到空字符串
EN

Stack Overflow用户
提问于 2022-04-15 16:57:11
回答 1查看 299关注 0票数 1

我正在尝试做简单的拖放功能。我想设置一些数据在拖动通过dataTransfer.setData(),并使它在拖放通过dataTransfer.getData()。我总是得到空字符串("")。

请查看复制示例https://codesandbox.io/s/quizzical-lamport-p7cqiv?file=/src/Sample.js的链接

拖放和检查控制台

我的环境:

浏览器:Chrome

OS:Windows

React库

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-29 12:37:23

你用错了事件。您应该使用onDragStart事件:

代码语言:javascript
运行
复制
import React from "react";

class Abc extends React.Component {
  drag(ev) {
    ev.dataTransfer.setData("text", ev.target.id);
  }

  allowDrop(ev) {
    ev.preventDefault();
  }

  drop(ev) {
    ev.preventDefault();
    var data = ev.dataTransfer.getData("text");
    console.log("data", data);
  }
  render() {
    return (
      <>
        <div id={"some_id"} onDragStart={this.drag} draggable={true}>
          Drag Me
        </div>

        <div onDragOver={this.allowDrop} onDrop={this.drop}>
          Drop On me
        </div>
      </>
    );
  }
}

export default Abc;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71886791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档