【发布时间】:2020-01-17 15:46:44
【问题描述】:
我明白了如何像这样将简单的图像放入单元格中
<img [src]="element.imageUrl" />
但我想知道展示星星集合的最佳方式是什么。假设我有一个名为overallRaiting 的字段,其值为0 到5。如果值为0,我想不显示星,如果是1,则为1 星,如果为2,则为2 星,依此类推。 这是我目前想出的方法,但希望有更好的方法。
<ng-container matColumnDef="imageUrl">
<th mat-header-cell *matHeaderCellDef> Image Url </th>
<td mat-cell *matCellDef="let element">
<img *ngIf="element.overallRaiting>=1" [src]="element.imageUrl" />
<img *ngIf="element.overallRaiting>=2" [src]="element.imageUrl" />
<img *ngIf="element.overallRaiting>=3" [src]="element.imageUrl" />
<img *ngIf="element.overallRaiting>=4" [src]="element.imageUrl" />
<img *ngIf="element.overallRaiting>=5" [src]="element.imageUrl" />
</ng-container>
我必须为每个 nbr 做一个 *ngif 还是更清洁更可重用的方式?
好的,试过了
<ng-container matColumnDef="overall_rating">
<th mat-header-cell *matHeaderCellDef> Overall Rating </th>
<td mat-cell *matCellDef="let element">
<ng-container *ngFor="let i of [].constructor(element.overall_rating)">
<img class="star" src="../../assets/images/basic-5-point-gold-star-beveled.jpg" />
</ng-container>
{{element.overall_rating}}
</td>
</ng-container>
在文档中产生这个
<td _ngcontent-snv-c2="" class="mat-cell cdk-column-overall_rating mat-column-overall_rating" mat-cell="" role="gridcell"><!--bindings={
"ng-reflect-ng-for-of": "4"
}--><!----><img _ngcontent-snv-c2="" class="star" src="../../assets/images/basic-5-point-gold-star-beveled.jpg"> 4 </td>
【问题讨论】: