javascript - 使用 react-beautiful-dnd 嵌套拖放

标签 javascript reactjs drag-and-drop nested

我正在使用 react-beautiful-dnd 创建垂直嵌套拖放。我提到了一些 answers in github

我从沙箱中 fork 出来,并为垂直嵌套拖放创建了一个新沙箱。 当我更改内部 DND 时,外部 DND 更改的值不是内部 DND。

enter image description here

代码

 onDragEnd(result) {
    // dropped outside the list
    console.log("innner drag");
    if (!result.destination) {
      return;
    }

    const items = reorder(
      this.state.items,
      result.source.index,
      result.destination.index
    );

    this.setState({
      items
    });
  }

演示代码:https://codesandbox.io/s/ozq53zmj6

最佳答案

react-beautiful-dnd目前不支持嵌套拖放,根据他们的路线图,它是低优先级项目。您需要处理外部 <DragDropContext onDragEnd={this.handleDragEnd}> 上的所有内容.在 result 中默认不提供 parent 信息对象,所以我将这些信息保存在 child 中 Droppable零件。如果适合您,请参阅下面的演示。

代码:https://codesandbox.io/s/jp4ow4r45v

编辑:请参阅下面的沙箱以获得更通用的代码片段,您可以在其中跨父容器应用嵌套拖放。

代码:https://codesandbox.io/s/5v2yvpjn7n

关于javascript - 使用 react-beautiful-dnd 嵌套拖放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52814011/

相关文章:

node.js - 添加键值对数据

javascript - 如何在 React 中等待多个异步等待请求

php - 拖放图像上传在服务器上不起作用

javascript - 从 PHP 编码的 JSON 文件中提取数据

javascript - 如何检测html文件中的所有mso书签?

javascript - 使用 javascript 函数将 HTML 表单写入网页

javascript - React-beautiful-dnd 中的 Draggables 不会拖动,而只会创建一个占位符

javascript - NodeJS : Redirect Client to Another Worker/Instance

reactjs - 在 Material UI Next 中创建自定义过渡

ipad 上的 jquery 嵌套拖动