Chaining RxJs Observables in Angular 2
Ich habe eine TypeScript-Funktion in meiner Angular 2-App, die eine Observable zurückgibt, um Web-API-Daten an den Consumer zurückzusende
public getApiData(): Observable {
let readySource = Observable.from('no', 'no', 'ready');
let dataSource = http.get('api/getData');
// ... magic here
return chainedObservable;
}
Allerdings, anstatt das @ zurückzugebhttp.get
Wie üblich zu beobachten, muss ich diesen HTTP-Aufruf mit einem anderen @ verkettereadySource
Beobachtbar, das angibt, ob die API aufrufbereit ist (es wird überprüft, ob ein Hintergrunddaten-Synchronisierungsjob abgeschlossen wurde).
Wie kann ich diese beiden Observables miteinander verketten, sodass der HTTP-Aufruf nur dann aufgerufen wird, wenn dasreadySource
drückt einen bestimmten Wert, z.B. "bereit"
(Beachten Sie, dass vanilla flatMap / selectMany die Anforderungen hier nicht ganz erfüllt, da ich warten muss, bis das erste Observable einen bestimmten Wert überträgt, bevor ich das zweite aufrufe.)