[英]RXJS better way to map and filter array inside of Observable<object>
這是我想要完成的一個非常簡單的版本。 目前它正在按預期工作,但我只是想知道是否有更短/更清潔的方法來實現 pipe() 內部的運算符
當前行為:在包含數組“項目”的屬性的可觀察對象上調用 pipe。 在 pipe 內部,過濾、排序然后將項目發布到行為主體。
public items$: BehaviorSubject
public testObservable = () =>
of({
Test: '123',
Properties: 'props',
Items: [
{ key: 1, val: 'test1' },
{ key: 2, val: 'test2' },
{ key: 3, val: 'test3' }
]
});
testMethod() {
this.testObservable()
.pipe(
pluck('Items'),
map(items => items.filter(item => item.key != 2)),
map(items => items.sort((a, b) => (a.key > b.key ? 1 : -1))),
tap(items => { this.items$.next(items) })
);
好吧,我可以只寫
this.testObservable()
.pipe(
map(value =>
value.items.filter(item => item.key != 2)
.sort((a, b) => (a.key > b.key ? 1 : -1))
),
tap(this.items$.next)
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.