角度材料选择默认值未被选中

时间:2021-04-23 06:32:53

标签: angular angular-material

我有一个选择框,我在其中绑定了对象数组。我想为它设置一个默认的初始值,即第 0 个位置值,我尝试使用 [(value)] 和 [(ngModel)] 但它不起作用。我错过了什么吗?

HTML -

<mat-form-field>
      <mat-label>Select</mat-label>
      <mat-select (selectionChange)="onLifeChange($event)" [(value)]="lifeId">
        <mat-option *ngFor="let life of lifeData" [value]="life">{{life?.fxlifeid}}</mat-option>
      </mat-select>
    </mat-form-field>

TS -

 getLives(): void {
    this.insuredService.getLives(caseId).subscribe(res => {
      this.lifeData = res;
      this.numberOfLife = this.lifeData.length;
      this.lifeId = this.lifeData[0].fxlifeid;
    })
  }

我在 ngOnInit 上调用 getLives。

1 个答案:

答案 0 :(得分:0)

在你的 component.ts 文件中创建一个 FormControl 对象

formCotrolName = new FormCotrol();

在 component.html 文件中将此对象分配给 mat-select 控件

[formCotrol]='formCotrolName'

现在在您的 component.ts 文件中,我们通过使用 formCotrol.value 属性从该下拉列表中获取值。但是这个值属性是只读的。要设置值,我们需要使用 setValue 方法

formControl.setValue(value);