Я пытаюсь использовать scan
для поддержки массива данных и некоторой фильтрации.
someObservable$.pipe(
filter(initial=> initial.length !== 0),
scan((acc, curr) => curr.filter(x => !acc.includes(x))),
map(data => etc...)
)
Я хотел бы обновить значение cc, чтобы оно каким-то образом поддерживало полный список из всех данных, которые прошли через, но выводит только отфильтрованные значения для сопоставления. Таким образом, если первый пройденный список был [1,2,3]
, а второй набор был [2,3,4]
На первом проходе я хочу, чтобы data
был [1,2,3]
и имел acc=[1,2,3]
, а во втором прошлом имел бы data
быть [4]
но есть acc=[1,2,3,4]
Я иду по этому поводу тупо? Я чувствую, что может быть лучше.