Wenn Sie Ihre Observables
verketten möchten, verwenden Sie .flatMap()
. Es ist die gleiche wie .then()
in Promise
Angenommen, Sie 3 HTTP-Aufruf-Funktionen in Ihrem Dienst haben, genannt firstRequest()
, secondRequest()
und thirdRequest()
. Sie können sie so verketten
myService.firstRequest()
.flatMap(result1 => {
//do something with result1 from firstRequest
return myService.secondRequest(result1)
.flatMap(result2 => {
//do something with result2 from secondRequest
return myService.thirdRequest(result2);
});
})
.subscribe(result3 => {
//finally do something with your result3 that is from thirdRequest
});
verwenden 'flatMap()' – CozyAzure
Könnten Sie Code hinzufügen? Was haben Sie versucht, welcher Fehler aufgetreten ist? –
Dies ist bereits gut hier beschrieben: https://stackoverflow.com/documentation/rxjs/8247/common-recipes/28035/sending-multiple-sequential-http-requests#t=201706291652523651924 – martin