title: Return Asynchronous Data from Angular 2 Service
body: <p>I have a component in Angular 2 that calls a service and allows someone to login to Facebook. It works like this:</p>
  
  <p>In my component I call my service with <code>this.facebook.login()</code></p>
  
  <p>And in my service, inside <code>login()</code>, I let someone login with <code>FB.login(res =&gt; { //do stuff with res });</code></p>
  
  <p>This pops up the Facebook auth window where you enter your username and password.</p>
  
  <p>This is working great. After someone logs into their Facebook account, <code>res</code> has the data I need from Facebook. But what I really want to do is return the data back to my component so I can do stuff with it. How can I return this data after they have logged in with Facebook? I've tried with Observables, but I keep running into errors.</p>