Много въпроси обсъждат начина за задаване на стойност по подразбиране, която да се показва в контрола „Избор“, тук излагам случай на форми, управлявани от шаблон на Angular 8, където не мога да получа стойността по подразбиране, показваща се в mat-select, когато бутонът се щракне, дори ако console.log показва правилната стойност:
<mat-select [formControl]="itemControl" required [(value)]="itemValue">
<mat-option>--</mat-option>
<mat-option *ngFor="let item of items" [value]="item">{{item}}</mat-option>
</mat-select>
Моята част от кода на компонента е както следва:
export class MyComponent {
items: string[] = [''];
itemControl = new FormControl('', [Validators.required]);
itemValue: string = '';
myButtonClick(): void {
this.itemValue = this.getItems()[0]; <--- This returns the first element in a valid array
console.log(this.itemValue);
}
}
И така, какво правя грешно?