我有一个表的标题,必须根据 json {id, name} 填充该表头 this.id 是我在组件中使用的 ngModel 名称,需要分别映射为自定义过滤器。
说,
list=[{id:ageSearch,name:age},{id:adressSearch,name:adress}]
因此,当我输入第一个输入文本字段的值时,将填充ageSearch并且它必须过滤数据,与adressSearch类似 现在我想知道如何在ngfor中动态映射变量ageSearch,adressSearch。
我尝试使用
<div *ngFor="let item of list;let index = index;trackBy:trackByIndex;">
<input [(ngModel)]="item[id]" placeholder="item">
</div>
但是,它填充值ageSearch而不是绑定(bind)变量。 谁能告诉我我正在尝试的东西是否可行。 如果是这样我怎样才能达到预期的流量。
预期结果应该是
<div>
<input [(ngModel)]="ageSearch" placeholder="item">
</div>
<div>
<input [(ngModel)]="adressSearch" placeholder="item">
</div>
编辑: 在组件中我将变量声明为 让年龄搜索:任意; 让地址搜索:任意;
这些值将传递给自定义过滤器。 因此,我必须设置输入的 ngModel 来绑定(bind)这些变量名称,以便它们最初在加载时显示为空白,并且当我们输入值时,它们分别反射(reflect) AgeSearch 和 adressSearch 的值。 然后将其传递给自定义过滤器。 谢谢。
最佳答案
经过一番尝试和尝试,我通过替换
<input [(ngModel)]="item.id" name="{{item.name}}" placeholder="item">
与
<input [(ngModel)]="this[item.id]" name="{{item.name}}" placeholder="item">
谢谢。
关于angular - 在 Angular 2+ 中为 ngmodel 设置动态变量引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52336703/