在Angular 6项目中,我正在努力使用mat-select和options。
我的用例如下:
我要下拉组织列表并保存所选组织(完整对象,而不仅仅是名称)
一切正常,除了它显示空白值,即选项显示所有组织,当我选择并组织并保存完整的组织对象时,但是当我第一次加载表单时,我希望它显示以前的组织名称选择并保存。
我似乎可以找到的所有帖子都只是使用简单的属性而不是对象。
请参阅下面的代码(希望如此)。任何建议/指导表示赞赏
<div [formGroup]="orderForm">
<mat-form-field>
<mat-label>Select Customer</mat-label>
<mat-select formControlName="customer">
<mat-option *ngFor="let organization of (organizations$| async)"
[value]="organization">
{{ organization.name }}
</mat-option>
</mat-select>
</mat-form-field>
</div>
答案 0 :(得分:0)
最后,解决方案非常简单,我在这篇帖子Angular Material: mat-select not selecting default
中发现了这一点。基本上,我只是使用了占位符,order是用于填充表单的基础对象,而customer只是表单上的属性之一:
<mat-select formControlName="customer" [placeholder]="order.customer['name']">
<mat-option *ngFor="let organization of (organizations$| async)"
[value]="organization">
{{ organization.name }}
</mat-option>
</mat-select>