Reputation: 12508
I have a itemsObservable
, filtersObservable
, and a queryObservable
and feed their values to a function that takes a list of items, filter conditions, and a search query, and returns a filtered list.
Right now my code looks something like:
itemsObservable
.flatMap(items => {
filtersObservable
.flatMap(filters => {
queryObservable
.map(query => filterItems(items, filters, query))
})
});
Is there a better code pattern for this that eschews the deep nesting?
Upvotes: 0
Views: 268
Reputation: 14004
queryObservable.withLatestFrom(
filtersObservable,
itemsObservable,
(query, filters, items) => filterItems(items, filters, query)
)
Upvotes: 1