Я работаю с формой и хочу включить выбор с помощью другого (по умолчанию отключено) и заполнить его данными в зависимости от первого значения, для этого я попытался:
<div fxLayout="row" fxLayoutAlign="start center" fxFlex="1 0 auto">
<mat-form-field appearance="outline" fxFlex="50">
<mat-label>Marque*</mat-label>
<mat-select formControlName="Marque" [(ngModel)]="selected" (ngModelChange)="onmarquechange()">
<mat-option *ngFor="let mar of MarqueListe" [value]="mar.Enum">{{mar.Name}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field appearance="outline" fxFlex="50">
<mat-label>Modèle*</mat-label>
<mat-select formControlName="Modele" [(ngModel)]="selected" [disabled]="selectmodele">
<mat-option *ngFor="let mod of ModelListe" [value]="mod.Enum">{{mod.Name}}
</mat-option>
</mat-select>
</mat-form-field>
</div>
мой компонент:
selectmodele = false;
ModelListe =[];// contains select data (by default empty)
ModelStockListe =[];//Contains Array of objects
onmarquechange(){
this.selectmodele = true;
console.log(this.selectmodele);
console.log(this.idSearchForm.get('Marque').value);//Acess to the first select value
let valueofmarque = this.idSearchForm.get('Marque').value;
console.log(this.ModelStockListe[valueofmarque]);
this.ModelListe = this.ModelStockListe[valueofmarque];
}
выбор onmarquechange () прекрасно работает при выборе модели заливки с данными после изменения выбора маркера, но я обнаружил две проблемы:
1 - при изменении выбора маркера значение второго выбора все еще отключено 2 - когда я пытаюсь выбрать один из вариантов выбора модели, я не знаю, почему эти два выбора сбрасывают их значения!