我在同一个html文件中并以相同的形式包含两个材料成分。这些是在角形材料版本6.0.0上完成的
<mat-form-field [hideRequiredMarker]="hideRequired" [floatLabel]="floatLabel" class="mat-form-field-infix">
<mat-select id="select-status" formControlName="state" required disableOptionCentering>
<mat-option *ngFor="let status of statuses" [value]="status.value">{{ status.display | translate:{ company_name: (companyName$ | async) } }}</mat-option>
</mat-select>
</mat-form-field>
和
<mat-radio-group formControlName="rating">
<mat-radio-button id="feedback-rating-{{ rating }}" class="feedback-rating" *ngFor="let rating of ratings" [value]="rating">
{{ rating }}
</mat-radio-button>
</mat-radio-group>
当我将它们与反应形式一起使用时,即使您不选择任何值,也可以通过按mat-select来将单选组的选定值更改为最后一个值。 (例如,如果单选按钮的选择是1到5,则在触摸“垫选”时会自动选择5)。我认为这是由于反应形式,因为当我删除和formControlName时,更改mat-select的值不会影响mat-ratio-group的当前选定值。这是表格的初始化
this.form = this.formBuilder.group({
state: [null, [Validators.required]],
rating: [null, [Validators.required]]
});
我错过了什么吗?还是有人经历过这种行为?如果是这样,您做了什么?
编辑:上述行为不会再次发生。仅在第一次触摸垫选择时发生