Angular 2 - Bindings不能包含赋值

Nic*_*las 19 javascript typescript angular

<tr>如果item的属性与数组中对象的属性具有相同的值,我需要给一个类.

这是我目前的代码:

<tr *ngFor="let item of closingDayGroupsList" [class.inactive]="definitionDetails.Groups.filter(i => i.AbsenceReservationGroupID === item.ID).length > 0">
Run Code Online (Sandbox Code Playgroud)

但是现在我收到错误:

Bindings cannot contain assignments
Run Code Online (Sandbox Code Playgroud)

我不确定我所做的是不好的做法,或者我是否只是在制作语法错误.

这是我知道实现我想要的唯一方式,但它不起作用

Sra*_*van 32

它是一种不好的做法,用expressionsangular bindings

class 表达式移动到控制器中.

export class AppComponent {
    title = 'Groups';

    getClass(item): void {

      // add filter logic here
      return this.definitionDetails.Groups.filter(i => i.AbsenceReservationGroupID === item.ID).length > 0

    }
}
Run Code Online (Sandbox Code Playgroud)

tr将是这样的,

<tr *ngFor="let item of closingDayGroupsList" [class.inactive]="getClass(item)">
Run Code Online (Sandbox Code Playgroud)