Вы «предварительно выбираете» имена
this.selectedApps.push(data['results'][0]['apps'][i]['name']);
, в то время как ваши параметры содержат идентификаторы
<mat-option
*ngFor="let app of appsList?.results" [value]="app.id">{{app.name
}}</mat-option>
Чтобы все заработало, selectedApps
оставьте те же значения, которые доступнына mat-option [value]
собственности.В конце концов, это и будет фактическим значением mat-select
.
Если честно, я бы сделал целое значение app
, поскольку нет никаких причин для его угрозы в противном случае.Это упростило бы большую часть кода.