Angular2 $事件如何添加到目标数据绑定或结构指令?

时间:2017-01-11 09:20:38

标签: angular drag-and-drop

我在组件内跨视图进行数据传输时遇到问题。 我拖拉;当我拖动数据添加到组件变量,然后我删除数据,它添加到方法的局部变量。

查看:

<tr>

              <td class="imported-table_data">
                  <h3>User name</h3>
                  <p>Simple name</p>
              </td>

              <td pDroppable="dd"
                  (onDrop)="dropped($event)"
                  class="imported-table_field" >
              </td></tr>


<tr *ngFor="let data of tableData" class="instance-table_row">
    <td pDraggable="dd" class="instance-table_data (onDragStart)="dragStart($event, data)">
     <h3>{{ data.title }}</h3>
     <p>{{ data?.data }}</p>
    </td>

</tr>

COMPONENT:

 dropped (event: Event) : void {
let data = this.tableCurrentData;
console.log('-----------------');
console.log(event);
console.log('-----------------');
this.tableCurrentData = null;}




dragStart (event: Event, data: any) : void {
console.log(event);
this.tableCurrentData = data;}

在这种情况下,我得到了具有当前TD的event.target,如何将我选择的数据添加到当前的TD?

1 个答案:

答案 0 :(得分:0)

在你的(onDragStart)中,你应该使用它:

 this.onDragStart.emit({
  data: yourdata,
  event:yourdata
  //other variable
})

您应该在html

中使用您的功能
<td pDraggable="dd" class="instance-table_data (onDragStart)="dragStart($event.event,$event.data)">

并在您的函数中打字稿文件:

public dragStart(event: any, data: string) {
//your code here
}