Angular 4 ng For& ngIf

时间:2018-04-24 19:02:46

标签: angular ngif

我正在计算我的数组中已完成的测验数,等于“1级”。

每当我尝试在progressList中显示等于1级的项目数时,它将显示progressList数组中所有项目的编号。

如何显示已完成的等于1级的项目数?

 <div *ngFor="let levels of progressList | slice: 0:1; let i = index" align="center">
          <p *ngIf="levels.level == 1"> You've Completed {{progressList?.length}}/4 Lessons! </p>
        </div>

***编辑w / Array ****

完成:“完成”, 1级, USER_ID: “email@email.com”

完成:“完成”, 1级, USER_ID: “email@email.com”

完成:“完成”, 1级, USER_ID: “email@email.com”

完成:“完成”, 等级:2, USER_ID: “email@email.com”

完成:“完成”, 等级:2, USER_ID: “email@email.com”

1 个答案:

答案 0 :(得分:1)

尝试以下操作,可能您的级别为string

<p *ngIf="levels.level === '1'"> You've Completed {{progressList?.length}}/4 Lessons! </p>

<强> EDIT

ngIf不用于过滤数据。它是在满足条件时显示元素。你可以这样做来显示component.ts中的计数

completedCount:any;

this.completedCount = progressList.filter(t=>t.level ==1).length;

并在模板中

<p> You've Completed {{this.completedCount}}/4 Lessons! </p>