W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
當(dāng)任何提供的 Observable 發(fā)出完整或錯誤通知時,它立即訂閱下一個 通過了。
onErrorResumeNext<T, R>(...nextSources: any[]): OperatorFunction
<T, R>
nextSources | 類型: any[] 。 |
---|
OperatorFunction<T, R>
:一個 Observable,它從源 Observable 發(fā)出值,但是-如果它出錯-訂閱 到下一個傳遞的 Observable 等,直到它完成或用完 Observable。
不管執(zhí)行什么,都執(zhí)行一系列 Observable,即使這意味著吞咽錯誤。
onErrorResumeNext
是接受一系列 Observable 的運(yùn)算符,直接以 參數(shù)或數(shù)組。 如果沒有提供單個 Observable,則返回的 Observable 的行為將相同 作為來源。
onErrorResumeNext
返回一個 Observable,該 Observable 首先從源 Observable 訂閱并重新發(fā)送值。 當(dāng)其值流結(jié)束時-無論 Observable 完成還是發(fā)出錯誤- onErrorResumeNext
將訂閱作為該方法的參數(shù)傳遞的第一個 Observable。 它將開始重新發(fā)射 它的值也是如此-再次-當(dāng)該流結(jié)束時, onErrorResumeNext
將繼續(xù)訂閱另一個 無論先前的 Observable 是完成還是以錯誤結(jié)束,都按提供的系列進(jìn)行觀測。 這將 直到序列中不再有可觀測對象為止,直到此時返回的可觀測對象 完成-即使最后訂閱的流以錯誤結(jié)尾。
onErrorResumeNext
因此可以認(rèn)為是 版本 concat
運(yùn)算符的 ,它更寬松 當(dāng)涉及到其輸入Observables 發(fā)出的錯誤時。 雖然 concat
訂閱下一個 Observable 僅在上一個成功完成后才連續(xù) onErrorResumeNext
訂閱,即使以 一個錯誤。
請注意,您無法訪問 Observables 發(fā)出的錯誤。 特別不要 希望這些錯誤出現(xiàn)在傳遞給的錯誤回調(diào)中 Observable
。 如果你想 基于 Observable 發(fā)出的錯誤的特定操作,您應(yīng)該嘗試一下 catchError
。
映射失敗后訂閱下一個 Observable
import { of } from 'rxjs';
import { onErrorResumeNext, map } from 'rxjs/operators';
of(1, 2, 3, 0).pipe(
map(x => {
if (x === 0) { throw Error(); }
return 10 / x;
}),
onErrorResumeNext(of(1, 2, 3)),
)
.subscribe(
val => console.log(val),
err => console.log(err), // Will never be called.
() => console.log('that\'s it!')
);
// Logs:
// 10
// 5
// 3.3333333333333335
// 1
// 2
// 3
// "that's it!"
onErrorResumeNext(): OperatorFunction<T, T>
參量 沒有參數(shù)。
returns OperatorFunction<T, T>
`
onErrorResumeNext(v: any): OperatorFunction<T, T | T2> `
參量 | 類型 |
---|---|
v | 類型: any |
returns OperatorFunction<T, T | T2>
onErrorResumeNext(v: any, v2: any): OperatorFunction<T, T | T2 | T3>
參量 | 類型 |
---|---|
v | 類型: any |
v2 | 類型: any |
returns OperatorFunction<T, T | T2 | T3>
onErrorResumeNext(v: any, v2: any, v3: any): OperatorFunction<T, T | T2 | T3 | T4>
參量 | 類型 |
---|---|
v | 類型: any |
v2 | 類型: any |
v3 | 類型: any |
returns OperatorFunction<T, T | T2 | T3 | T4>
onErrorResumeNext(v: any, v2: any, v3: any, v4: any): OperatorFunction<T, T | T2 | T3 | T4 | T5>
參量 | 類型 |
---|---|
v | 類型: any |
v2 | 類型: any |
v3 | 類型: any |
v4 | 類型: any |
returns OperatorFunction<T, T | T2 | T3 | T4 | T5>
onErrorResumeNext(v: any, v2: any, v3: any, v4: any, v5: any): OperatorFunction<T, T | T2 | T3 | T4 | T5 | T6>
參量 | 類型 |
---|---|
v | 類型: any |
v2 | 類型: any |
v3 | 類型: any |
v4 | 類型: any |
v5 | 類型: any |
returns OperatorFunction<T, T | T2 | T3 | T4 | T5 | T6>
onErrorResumeNext(v: any, v2: any, v3: any, v4: any, v5: any, v6: any): OperatorFunction<T, T | T2 | T3 | T4 | T5 | T6 | T7>
參量 | 類型 |
---|---|
v | 類型: any |
v2 | 類型: any |
v3 | 類型: any |
v4 | 類型: any |
v5 | 類型: any |
v6 | 類型: any |
returns OperatorFunction<T, T | T2 | T3 | T4 | T5 | T6 | T7>
onErrorResumeNext(...observables: any[]): OperatorFunction<T, T R>
參量 | 類型 |
---|---|
可觀察的 | 類型: any[] |
returns OperatorFunction<T, T | R>
onErrorResumeNext(array: any[]): OperatorFunction<T, T | R>
參量 | 類型 |
---|---|
數(shù)組 | 類型: any[] |
returns OperatorFunction<T, T | R>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: