【发布时间】:2021-11-15 15:16:59
【问题描述】:
我的目标是,如果用户单击悬停面板中的某个项目,则所有用户都会被过滤,并且表格仅显示在此特殊类别中获得相同项目的用户。 我目前的问题是我的 chechbox 的 ngModel 不能正常工作。如果我单击其中一个复选框,它只会返回真或假。
<ng-container *ngFor="let char of allChars">
<mat-checkbox [(ngModel)]="resultModel.char" (ngModelChange)="FilterChanged()" name="allgemeinesMerkmal">
{{char.bezeichnung}}
</mat-checkbox>
</ng-container>
我已经尝试传递 resultModel.char.bezeichnung 但是控制台返回错误: 无法读取未定义的属性(读取“bezeichnung”)
所以我不知道如何处理这个特定的复选框值。我需要这些值,因为我想将复选框传递到我的过滤器中,如下所示:
map( p => (!this.resultModel) ? p:p.filter(((i:any) => this.getAllgemeineMerkmaleBezeichnung(i.allgemeinesMerkmal)?.toLowerCase().includes(this.resultModel.toLowerCase())))),
//My getAllgemeineMerkmale function
getAllgemeineMerkmaleBezeichnung(allgemeinesMerkmal: AllgemeineMerkmaleZuordnungen[]){
return this.allChars.filter((i:any) => allgemeinesMerkmal.findIndex(p => p.allgemeinesMerkmalId == i.allgemeinesMerkmalId) >= 0).map((p:any) => p.bezeichnung);
}
【问题讨论】:
标签: angular