0
스트림에 개체에 문자열이 들어있는 스트림이 있습니다. 문자열 배열이 다른 필터가 있습니다. 필터는 배열의 교차가 비어 있지 않은 항목 만 방출해야합니다.Rxjs/Typescript : 배열 교차점에서 스트림을 필터링하려고 시도합니다.
이것은 내가하고 싶은 흉내 코드입니다.
genreFilter: string["poetry", "fiction"]
this.books$ = this.bookInventoryService.getBooks()
.filter(book => {
for(let genre of genreFilter) {
if (book.genres.contains(genre) {
return true;
}
}
});
배열 교차를 수행 할 방법이 있습니까?
은'bookInventoryService.getBooks()''관찰 가능한' 그래서 람다 반환 세트가 큰 경우는 O (1) 조회 수 있도록 아니면 필터에서 개체를 만들 수 있습니다 'this.bookinventoryService.getBooks()''.filter (book => book.genres'는'book'이 개인이 아닌'book' [book]입니다. 'book' 객체 책에'foreach'가 필요합니까? –
필요가 없습니다. 책 배열을 평평하게 놓을 수 있습니다 :'bookInventoryService.getBooks(). flatMap (books => books) .filter (/ ** /)' – paulpdaniels