Угловой 2 - Список сортировки от наблюдаемого
Каков наилучший способ sort списка элементов, исходящих из Observable и все еще иметь возможность использовать async pipe? (Я читал, что создание настраиваемого канала сортировки не очень эффективно.) Я хочу избежать подписки и хранения локальной копии данных и, таким образом, просто используя async pipe...
//can I use map here and filter items right in the observable and get rid of subscribe?
this.test$ = Observable.of(['one', 'two', 'three'])
.subscribe((data) => {
data.sort((a, b) => {
return a < b ? -1 : 1;
});
this.data = data;
});
шаблон:
<div *ngFor='let item of data'>
<!-- want to be able to use async pipe here -->
Ответы
Ответ 1
Если вы вызываете .subscribe() вы получаете Subscription, асинхронный канал ожидает Observable.
Если вы измените его на
this.test$ = Observable.of(['one', 'two', 'three'])
.map((data) => {
data.sort((a, b) => {
return a < b ? -1 : 1;
});
return data;
});
вы можете использовать асинхронный канал с test$