title: Subscribe to multiple Observables (like chaining then() in Promises)
body: <p>My Angular 2 application has 2 methods (<code>GetCategories()</code> and <code>GetCartItems()</code>) in a service , and both of these methods return <code>Observable</code>s.</p>
  
  <p>In order to invoke these two methods one after another from my component, I have written below code:</p>
  
  <pre><code> ngOnInit() 
  {
     this.appService.GetCategories().subscribe( (data) =&gt; {
         this.appService.categories = data;
  
  
         this.appService.GetCartItems().subscribe( {
                                                      next: (data) =&gt; { this.appService.cart = data},
                                                      error: (err) =&gt; { this.toaster.error('cart==&gt;' + err)}
  
                                                  })
  
     });       
  }
  </code></pre>
  
  <p>Basically, calling <code>GetCartItems()</code> from within <code>subscribe()</code> of <code>GetCategories()</code>, and I feel this is NOT the right approach. This is kind of callback hell.</p>
  
  <p>Any idea on how to implement this in a better way (like chaining <code>then()</code> in <code>Promise</code>s)?</p>