阅读(1884) (1)

RxJS throwError

2020-09-27 17:13:18 更新

创建一个 Observable,不向观察者发出任何项目 发出错误通知。

throwError(error: any, scheduler?: SchedulerLike): Observable<never>

参量

错误 要传递给错误通知的特定错误。
调度器 可选的。 默认值为 undefined。  一个 SchedulerLike为计划  错误通知的发出。

退货

Observable<never>:错误可观察:仅发出错误通知 使用给定的错误参数。

描述

只是发出“错误”,别无其他。

扔大理石图

此静态运算符可用于创建仅 发出错误通知。 它可以用来与其他 可观测值,例如中的 mergeMap

例子

发出数字7,然后发出错误

import { throwError, concat, of } from 'rxjs';


const result = concat(of(7), throwError(new Error('oops!')));
result.subscribe(x => console.log(x), e => console.error(e));


// Logs:
// 7
// Error: oops!

将数字映射并展平到序列'a','b','c',但会抛出错误2

import { throwError, interval, of } from 'rxjs';
import { mergeMap } from 'rxjs/operators';


interval(1000).pipe(
  mergeMap(x => x === 2
    ? throwError('Twos are bad')
    : of('a', 'b', 'c')
  ),
).subscribe(x => console.log(x), e => console.error(e));


// Logs:
// a
// b
// c
// a
// b
// c
// Twos are bad

也可以看看