Rxjs-error-handling-operator-catcherror

提供:Dev Guides
移動先:案内検索

RxJS-エラー処理演算子catchError

このオペレーターは、新しいObservableまたはエラーを返すことにより、ソースObservableのエラーをキャッチします。

構文

catchError(selector_func: (err_func: any, caught: Observable) => O):Observable

パラメーター

*_selector_funct_* -セレクターfuncは2つの引数(エラー関数とcatch)を受け取り、これは監視可能です。

戻り値

selector_funcによって発行された値に基づいてオブザーバブルを返します。

import { of } from 'rxjs';
import { map, filter, catchError } from 'rxjs/operators';

let all_nums = of(1, 6, 5, 10, 9, 20, 40);
let final_val = all_nums.pipe(
   map(el => {
      if (el === 10) {
         throw new Error("Testing catchError.");
      }
      return el;
   }),
   catchError(err => {
      console.error(err.message);
      return of("From catchError");
   })
);
final_val.subscribe(
   x => console.log(x),
   err => console.error(err),
   () => console.log("Task Complete")
);

出力

catchError演算子