如何在金属拖放中获取拖动的项目数据

Tri*_*ity 6 angular-material angular

我正在学习角度。我的第一个应用程序是todolist。我正在尝试使用nodejs和mongodb来开发它。共有三个容器,如待办事项、已完成事项。当我将一个项目从待办事项拖到待办事项时,我想处理它的 id。我怎样才能做到这一点 ?

      drop(event: CdkDragDrop<string[]>) {
        if (event.previousContainer === event.container) {
          moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);
        } else {
          transferArrayItem(event.previousContainer.data,
                            event.container.data,
                            event.previousIndex,
                            event.currentIndex);
        }

              ///TODO handle dragged item id,title or someinformation


      }
Run Code Online (Sandbox Code Playgroud)

Joh*_*ego 10

您可以将数据传递到可拖动山墙项目,如下所示:

<div cdkDrag [cdkDragData]="todo" *ngFor="let todo of todos"></div>
Run Code Online (Sandbox Code Playgroud)

数据(在本例中为您的待办事项)将在事件对象中可用。

drop(event: CdkDragDrop<string[]>) {
  console.log(event.item.data);
} 
Run Code Online (Sandbox Code Playgroud)