BACK
ПрактикаInterview: timeout() защита ожидания
ПРАКТИКА · 39 · 練

Interview: timeout() защита ожидания

Если NEVER не эмитит за 5ms, перехватите timeout и верните timeout.

  1. Решите задачу в редакторе без длинной теории.
  2. Запустите проверку и сравните вывод с ожидаемым.
  3. Если застряли, откройте решение и перенесите подход в свой код.
Решение spoiler · click to reveal
const { NEVER, of, timeout, catchError } = Rx;

const result$ = NEVER.pipe(
  timeout({ first: 5 }),
  catchError(() => of('timeout'))
);

result$.subscribe(value => console.log(value));
script.ts // TypeScript
CONSOLE · Console Output
Нажмите на запуск, чтобы увидеть результат...