如何在RxJS5中恢复错误(或类似)

时间:2016-03-03 13:04:54

标签: rxjs5

我想使用RxJS的onErrorResumeNext功能,即即使收到错误(而不是终止),也要继续接收事件。

但我可以在下面的文档中看到RxJS5中没有对应关系:https://github.com/ReactiveX/RxJS/blob/master/MIGRATION.md

有使用此功能的解决方法吗? 谢谢!

2 个答案:

答案 0 :(得分:1)

我一直在寻找那个运营商!我想出了一个满足我需求的解决方案,希望对你有所帮助。它不是最有可能的最佳解决方案,但我希望它可以提供帮助,直到这里的其他人找到更好的解决方案,或者直到在5.0中添加此运算符(希望!):)

var Observable = Rx.Observable;

var source1 = Observable.create(function(observer){
    observer.error();
});
var source2 = Observable.create(function(observer){
    observer.next('Continuing on');
    observer.complete();
});


var stream = source1.catch(function(data){
  return source2;
});



stream.subscribe(function(data){
  console.log(data);
});

JS Bin示例:https://jsbin.com/qadozoveta/edit?html,js,console

答案 1 :(得分:0)

您仍然可以在rxjs5中使用以下内容。

 Observable.onErrorResumeNext(observable1$, observable2$, observable3$...)
           .subscribe(() => { ... })

onErrorResumeNext source code