设置垫选择的默认值



>我有一个垫子选择。 当我第一次显示表单时,我希望它在加载数据后选择选择中的第一项。我该怎么做?

<mat-select 
placeholder="period"
(selectionChange)="selectperiod($event)"
(ngModel)="(periodoptions)"
>
<mat-option
*ngFor="let p of periodoptions | async"
[value]="p.periodid"
>
{{ p.periodstart }}
</mat-option>
</mat-select>

使用它来调用函数来拉取 REST 数据

of(this.getperiods()).subscribe(pp => {
this.periodoptions = pp;

如果你想使用ngModel,只需将(ngModel(替换为[(ngModel(]。您也可以将ngModel替换为[(值(]以避免使用 ngModel 模块。

此外,如果要选择数组的第一项,将periodoptions分配给 ngModel 是错误的,因为每个 mat-option 值都是p.periodid。你将不得不使用periodoptions[0].periodid

也许这可以帮助您:

<mat-select placeholder="period" (selectionChange)="selectperiod($event)" [(ngModel)]="periodoptions">
<mat-option>Default Option</mat-option>
<mat-option *ngFor="let p of periodoptions | async" [value]="p.periodid">
{{ p.periodstart }}
</mat-option>
</mat-select>

最新更新