Mat-option select设置地图的默认选择选项

时间:2019-06-10 14:53:26

标签: angular typescript angular-material

如何将用于选垫的Map的第一个元素设置为默认选择选项?我有:

<mat-select formControlName="formValoreScadenzario" [(value)] ="selectedValoreScadenzario">
  <mat-option *ngFor="let scad of mappaValoriScadenzario" [value]="scad.key">
    {{scad.value}}
  </mat-option>
</mat-select>

其中mappaValoriScadenzario是我的地图。如何将地图的第一个键值元素设置为默认选择的值?我只发现了带有硬编码值或带有简单字符串数组的示例。

2 个答案:

答案 0 :(得分:0)

您需要修复在ngOnInit中选择的默认设置:.ts文件中, 以这个例子-.-,

https://stackblitz.com/edit/how-to-set-default-value-of-mat-select-when-options-are-retriev

答案 1 :(得分:0)

setValue初始化(静态初始化或通过可观察的订阅中的formValoreScadenzario获取数据)之后,应通过mappaValoriScadenzario FormControl的HttpClient方法手动设置它,如下所示:

this.formValoreScadenzario.setValue(this.mappaValoriScadenzario[0].key)

更新 如果FormControl嵌套在FormGroup中,则可以这样设置它的值:

this.ricercaScadenzarioForm.get('formValoreScadenzario').setValue(this.mappaValoriScadenzario[0].key)

StackBlitz example