我正在使用材料复选框和材料选择
select选项是动态的,它基于同一fromarray中的先前表单字段
https://stackblitz.com/edit/angular-rwyr3u
检查链接,请了解其他情况并检查控制台
一次单击复选框,就会多次调用Field_Filter
函数。
有人建议我如何解决此问题或提供替代解决方案
答案 0 :(得分:0)
自从您将函数Field_Filter()作为* ngFor循环的参数传递以来,每次迭代时都会调用该函数。
相反,让函数写入变量,然后使用* ngFor迭代该变量。
示例:
HTML:
<mat-option *ngFor="let Fields of FilteredList" [value]="Fields._id"> {{Fields.Name}} </mat-option>
TS:
filteredList: [any]
someEventFunction(Type: any, Index: any) {
this.filteredList = Field_Filter(Type, Index)
}
我在确定您想要的行为时遇到了一些麻烦,因此无法为您提供完整的工作示例,但我希望这会有所帮助!