2017-06-13 2 views

Antwort

1

Alles, was retryWhen tut, ist, dass es seine Quelle Observable erneut abonniert. Was das bedeutet, liegt an dir.

Zum Beispiel können Sie Observable.defer() verwenden eine andere beobachtbare auf jedem Wieder Abonnement zurückzukehren:

let retries = 0; 

Observable.defer(() => { 
    if (retries++ === 3) { 
     return Observable.of('whatever'); 
    } 
    return this.http.get(...); 
    }) 
    .retryWhen((errors: Observable) => errors) 
    .subscribe(...); 

Ähnlich Sie zum Beispiel Observable.create() nutzen könnten.