我的棱角版本是7。我正在创建一个表格,其中有一个下拉菜单可供选择。我的列表可供选择,但是当我加载页面时,它没有显示预定义的值。该页面具有编辑用户数据的形式。下面是我的html代码,
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef>Server Name</mat-header-cell>
<mat-cell *matCellDef="let row; let index = index" [formGroupName]="index">
<mat-form-field>
<!-- <input class="jminput" matInput formControlName="name" autocomplete="off"> -->
<mat-select matSelect [formControl]="name">
<mat-option *ngFor="let item of arr" value="item">{{item}}</mat-option>
</mat-select>
<mat-error *ngIf="name.touched && !name.required">
Server Name is required
</mat-error>
</mat-form-field>
</mat-cell>
</ng-container>
当我用<input>
代替<mat-select>
时,它将起作用并显示以初始值为准的值。所以我认为 formControlName =“ name” 工作正常。但这不适用于<mat-select>
。
请提出建议。
答案 0 :(得分:4)
将value="item"
更改为[value]="item"
答案 1 :(得分:2)
您使用了[formControl]="name"
而不是formControlName="name"
。此控件启动时的值设置必须是arr
数组的元素。