Sono nuovo su Angular2 e Http Observable. Ho un componente che chiama il servizio Http e restituisce Observable. Di quanto sottoscrivo quell'Osservabile e funziona bene.Come concatenare le chiamate Http in Angular2
Ora, desidero, in quel componente, dopo aver chiamato il primo servizio Http, se la chiamata è riuscita, chiamare un altro servizio Http e restituire tale Osservabile. Quindi, se la prima chiamata non è riuscita, la componente restituisce Osservabile, di fronte restituisce Osservabile della seconda chiamata.
Quindi, la domanda è, qual è il modo migliore per concatenare le chiamate Http? C'è un modo elegante, per esempio come le monadi?
Con angolare 2.0 (beta 0) i seguenti sono necessari: importazione 'rxjs/aggiungere/operatore/carta'; importazione 'rxjs/add/operator/mergeMap'; –
Mentre questo funziona perfettamente. ogni volta che rieseguo il percorso le chiamate http vengono attivate 2 volte in più. ngOnInit() { let counter1 = 0, counter2 = 0; console.log ('MyBiraComponent ngOnInit'); let uk = this.us.get(); this.u = uk.map (person => { console.log ('riga 45:', ++ counter1); return person.id; }). FlatMap (id => { console.log ('line 48:', ++ counter2); return this.bu.get (id); }). subscribe (res => { console.log (res); }); } ngOnDestroy() { this.u.unsubscribe(); } – Prabhat
postato come domanda qui http://stackoverflow.com/questions/41087885/chained-rx-calls-called-multiple-times – Prabhat