title: Angular2 Observer goes missing
body: <p>I am having trouble sticking to an observer. I have a component which creates an observable, and in the callback, I catch the observer. But later, I cannot get that observer - as if I have another instance of component.</p>
  
  <p>Example:</p>
  
  <pre><code>import {Component} from 'angular2/core';
  import {Observable} from 'rxjs/Observable';
  
  @Component({
    selector: 'users-table',
    templateUrl: './components/users/users-table.html',
    // template: '&lt;button (click)="popup({value: 2})"&gt;Clickme&lt;/button&gt;'
  })
  export class UsersTableComponent {
  
    public userClicked$: Observable&lt;any&gt;;
    public observer: any;
    public thing: number;
    constructor() {
  
      console.log('Starting UsersTable component');
      this.thing = 1;
      this.userClicked$ = new Observable(observer =&gt; {
  
        this.thing = 2;
        console.log('Observer received:', observer);
        this.observer = observer;
        this.observer.next('Val 1'); // I receive this in an outside component
      }).share(); // This supposedly makes the observable *hot*
    }
  
    public handle(value) {
  
      console.log('Value:', value);
      console.log(this.userClicked$);
      console.log('thing:', this.thing); // This is set back to "1
      this.observer.next(user);       // this.observer is undefined
                                      // so it fails here
    }
  }
  </code></pre>
  
  <p>Note that I'm subscribing to this from another component, and I do get that initial test value (<code>'val 1'</code>)</p>
  
  <p>The other component is listening, subscribing in "ngAfterViewInit", basically like this:</p>
  
  <pre><code>this.usersTableComponent.userClicked$.subscribe(val =&gt; { console.log('heard ya:' val); });
  </code></pre>
  
  <p>Am I missing something obvious? Can I somehow use click handler directly to pass that clicked user thing? (a row in the table)?</p>
  
  <p>Angular2 Beta 8.</p>