Angular如何在QueryList <elementref>中找到哪个元素被单击

时间:2019-03-27 23:58:19

标签: angular typescript

在这里帮助我理解。我有使用ViewChildren设置的表格单元格集的ElmentRef(QueryList)(动态创建的html元素)。我调试并设置了元素集。

当我单击特定的td html元素时,我调用一个函数,在该函数中,我需要找到ElementRef(QueryList)中的哪个元素被单击。您能提出您的想法吗?

component.html

<table>

    <tr *ngFor="let i of Arr">
      <ng-container *ngFor="let j of Arr">

      <td  #tdID (click)="cellClicked(tdID)">

      </td>
      </ng-container>

    </tr>
    </table>

component.ts

Arr =[1,2,3];
 @ViewChildren('tdID') divs:QueryList<ElementRef>;

cellClicked(cell) {
       console.log("Cell clicked"+cell);
//Help find here which element in the divs QueryList matches "cell"     

}

我相信我已经提供了足够的详细信息,并让我知道以获取更多信息。感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

brew doctor

在您的.ts文件中

<table>
    <tr *ngFor="let i of Arr">
      <ng-container *ngFor="let j of Arr">

      <td  #tdID (click)="cellClicked(tdID, i, j)">

      </td>
      </ng-container>

    </tr>
</table>