2
如果3次尝试后集合不成功,我需要重试一系列RxJS observables并在序列中抛出该项目的错误对象。我发现这个例子(An incremental back-off strategy for handling errors):如何从RXJS Observable重试时抛出一个错误
var source = get('url').retryWhen(
attempts =>
attempts
.zip(Observable.range(1, 3), (_, i) => i)
.flatMap(i => {
console.log('delay retry by ' + i + ' second(s)');
return Rx.Observable.timer(i * 1000);
});
);
var subscription = source.subscribe(
data => {
// Displays the data from the URL or cached data
console.log(data);
});
你怎么扔属于该项目集合中的错误?上述代码似乎吞噬了错误,而不是将其呈现给调用者来处理。 - 在_
将是错误(_, i) => i
:
非常感谢你! –