Не могу обновить мой множественный выбор коврика новым выбором - PullRequest
0 голосов
/ 26 мая 2020

Буду признателен за любую помощь. Я использую Angular реактивную форму и мат-дизайн материала с выбором множественный . В поле выбора отображается список стран и их соответствующий флаг:

>   **spokenLangs**: any[] = [
>             {lang: 'Hebrew',  flag: 'icons8-israel-48.png'},
>             {lang: 'English', flag: 'icons8-great-britain-48.png'},
>             {lang: 'Russian', flag: 'icons8-russian-federation-48.png'},
>             {lang: 'French',  flag: 'icons8-france-48.png'},
>             {lang: 'Italian', flag: 'icons8-italy-48.png'},
>             {lang: 'Spanish', flag: 'icons8-spain-flag-48.png'},
>             {lang: 'German',  flag: 'icons8-germany-48.png'},
>             {lang: 'Chinese', flag: 'icons8-china-48.png'},
>           ];

Я могу инициализировать свой mat-select с предварительно определенным выбором выбранного языка среди speakLangsArray:

this.selectedLangs = [{lang: 'English', flag: 'icons8-great-britain-48.png'}, {lang: 'German',  flag: 'icons8-germany-48.png'}]

this.clientForm = this.fb.group(
  **spokenLangs**: [this.**selectedLangs**]
})

Моя проблема возникает, когда я обновляю свой matSelect другим предопределенным выбором, полученным с сервера.

this.**selectedLangs** = this.selectedClientData.spokenLangs;

this.clientForm.patchValue({**spokenLangs**: this.**selectedLangs**});

**

  • мой mat-select остается без выбора.

**

<form [formGroup]="clientForm" (ngSubmit)="onSubmit()" novalidate >
 <mat-form-field appearance="outline" class="spokenLangs">
  <mat-label>Spoken Languages</mat-label>
  <mat-select formControlName="**spokenLangs**" placeholder="Select Language" 
              [(ngModel)]="**selectedLangs**" **multiple**>
   <mat-select-trigger>
    <img height="25px" *ngFor="let currLang of **selectedLangs**"  style="margin-right: 
         1em;" src="../../../../assets/icons/flags/{{currLang.flag}}">
   </mat-select-trigger>
   <mat-option *ngFor="let elem of **spokenLangsArray**" [value]="elem">
     <img height="25px" src="../../../../assets/icons/flags/{{elem.flag}}">
   </mat-option>
  </mat-select>
 </mat-form-field>
</form>

Что я делаю не так ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...