如果从BE获取选项,我有一个选择,一旦获取,我就会填充选项。 ngModule在另一步骤中设置,并且等于选项之一。 我正在寻找的结果是该选项与我的模型相同。
<select class="form-control" id="accident-" [(ngModel)]="accident" required>
<option *ngFor="let a of accidents" [ngValue]="a">{{a.text | titlecase}}</option>
</select>
Br
答案 0 :(得分:2)
请向事故对象添加一个id
属性,然后
<select class="form-control" id="accident-" [(ngModel)]="selectedAccident.id" required>
<option *ngFor="let a of accidents" [ngValue]="a.id">{{a.text | titlecase}}
</option>
</select>
在这里,您必须根据业务需求在 TS 文件中设置selectedAccident
答案 1 :(得分:2)
Angular使用对象标识来选择选项。
要自定义默认的选项比较算法,<select>
支持compareWith
输入。
HTML文件:
<select class="form-control" id="accident-" [(ngModel)]="accident" required [compareWith]="byAccident">
<option *ngFor="let a of accidents" [ngValue]="a">{{a.text | titlecase}}</option>
</select>
TS文件:
byAccident(item1, item2) {
return item1 && item2 ? item1.text === item2.text : item1 === item2;
}
参考:https://angular.io/api/forms/SelectControlValueAccessor#caveat-option-selection