Вы можете определить модифицированную версию Observable (например, sortMenuDefault
), в которой значение первого элемента присваивается sortValue
с помощью оператора do
:
this.sortMenuDefault = this.sortMenu$.do(items => {
if (!this.sortValue && items && items.length > 0) {
this.sortValue = items[0].value;
}
});
ииспользуйте этот Observable в шаблоне:
<select [(ngModel)]="sortValue" ...>
<option *ngFor="let menu of sortMenuDefault | async" [value]="menu.value">
{{menu.label}}
</option>
</select>
См. этот стек для демонстрации.