我希望仅在(click)
具有值ngIF
时使用True
函数。
<tbody class="table-hover domains">
<tr *ngFor="let domain of domains" (click)="gotoDetail(domain.id)">
<td class="col-md-3">{{ domain.name }}</td>
<td>{{ domain.validated }}</td>
</tr>
</tbody>
所以我需要在ngIF
标记中添加<tr>
,好像{{ domain.validated }}
值为True
,然后(click)
函数有效,否则它不起作用或显示变量具有值False
的消息。怎么做?
答案 0 :(得分:6)
尝试使用:
<tbody class="table-hover domains">
<tr *ngFor="let domain of domains" (click)="!domain.validated || gotoDetail(domain.id)">
<td class="col-md-3">{{ domain.name }}</td>
<td>{{ domain.validated }}</td>
</tr>
</tbody>
希望它对你有用。
只有在第一部分(!domain.validated)返回false时才会调用该函数。
答案 1 :(得分:2)
您可以向goToDetail函数提供第二个参数Boolean,并仅在用户为真时重定向。
答案 2 :(得分:0)
试试这个:
<tbody class="table-hover domains">
<template ngFor let-domain [ngForOf]="domains ">
<tr *ngIf="domain.validated" (click)="gotoDetail(domain.id)">
<td class="col-md-3">{{ domain.name }}</td>
<td>{{ domain.validated }}</td>
</tr>
</template>
</tbody>
您也可以使用ng-template
。
答案 3 :(得分:0)
您可以像这样定义您的功能:
gotoDetail(id: number){
if (this.domain.validated)
// Your normal code
else
// Display error message, Do nothing
}