在组件中创建的Angular 2/4事件单击按钮

时间:2017-10-12 08:04:45

标签: angular

我想创建一个动态按钮" Favoris"点击事件" onListFavorisAdded()"在每行的ng表中。该表在组件中创建和配置。所以我也在component.ts中创建了这个按钮,然后把它放在html中。该按钮显示在我的网页中,但是当我点击它时该事件不起作用......

html:

<ng-table [config]="config"
              (tableChanged)="refreshTable(config)"
              (expanderClicked)="expanderClicked($event)"
              [rows]="rows" [columns]="columns"
              [expandable]="true"
              [expandedComponent]="rowComponent"
              [rowInputs]="rowInputs">
    </ng-table>

在我的组件中创建行的函数:我为在表中创建的每一行执行for

for (let collab of collaborators) {
      // Add a column name
      collab.nomPrenom = this.getData(collab, "data.personne.nom", "").toUpperCase() + " " + this.getData(collab, "data.personne.prenom", "");

      // Add a column preview
      collab.preview = '<a class="btn-default" href="#/profile/' + this.getData(collab, "tgi") + '" aria-label="Profile">  <i class="fa fa-eye" aria-hidden="true"></i></a>';

      // !!!!! Add a column Favoris !!!!!!!!
      collab.favoris = '<button data-ng-click="onListFavorisAdded()"><i class="fa fa-star" aria-hidden="true"></i></button>';

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

你可以做的是制作一张带有ngFor的表:

<table>
    <tr>
       <td *ngFor="let dataRow of Data; let i = index" (click)="onListFavorisAdded()">{{dataRow.name}}</td>

您在数据数组中添加的每个项目都会生成一个新行。