У меня есть ситуация, когда наблюдаемая возвращает список объектов, и я хочу отфильтровать те, которые уже находятся в отдельном массиве.
Например:
opinables
.pipe(
map((opinables: Opinable[]) => {
return opinables.filter(
(opinable: Opinable) => !ids.includes(opinable.id)
);
})
)
.subscribe((opinables: Opinable[]) => this._opinables.push(...opinables));
Что я не понимаю, так это то, почему мне нужно заключить фильтр в карту.
Насколько я понимаю, фильтр применяется к списку и удаляет те элементы, для которых предоставленная функция возвращает false.
Вместо этого карта применяет функцию к каждому элементу списка.
Итак, даже несмотря на то, что приведенный выше фрагмент работает, кажется, что он применяет фильтр к каждому элементу списка, что кажется неправильным, поскольку я, вероятно, хочу применить фильтр к самому списку?