BACK
PracticeReal-life: combineLatest() + startWith() default filter
PRACTICE · 66 · 練

Real-life: combineLatest() + startWith() default filter

combineLatest won't emit without a filter value. Add a default all via startWith.

  1. Solve the task in the editor — no long theory.
  2. Run the check and compare your output with the expected result.
  3. Stuck? Open the solution and carry the approach into your own code.
Solution spoiler · click to reveal
const { of, EMPTY, combineLatest, startWith, map } = Rx;

const query$ = of('term');
const filter$ = EMPTY.pipe(
  startWith('all')
);

const result$ = combineLatest([query$, filter$]).pipe(
  map(([query, filter]) => query + ':' + filter)
);

result$.subscribe(value => console.log(value));
script.ts // TypeScript
CONSOLE · Console output
Hit Run to see the result...