How do you get an Observable of a Event?
<p>I'm wondering how do you get an Observable of a Event in Angular 2?</p>

<p>For example I want to subscribe to a click event but only emit after two clicks? Is possible to get a Observable of <code>MouseClick</code> event objects?</p>

<p>Say if I wanted to filter by <code>button</code> or <code>ctrlKey</code> - Or a Observable of <code>KeyboardEvent</code> and filter by <code>key</code> \ <code>keyCode</code> - Or any possible future scenario</p>

<p>I have read <a href="http://blog.thoughtram.io/angular/2016/01/06/taking-advantage-of-observables-in-angular2.html" rel="nofollow">http://blog.thoughtram.io/angular/2016/01/06/taking-advantage-of-observables-in-angular2.html</a> but the <code>valueChanges</code> property is <code>Observable&lt;string&gt;</code></p>

<p>I have also seen on <a href="https://github.com/angular/angular/issues/5489" rel="nofollow">https://github.com/angular/angular/issues/5489</a> that it is possible to do something like:</p>

<pre><code>this.clickStream = new Subject();
...
&lt;button (click)="clickStream.next($event)"&gt;Click Me&lt;/button&gt;
</code></pre>

<p>Is the <code>Subject</code> method above the correct way to do it? I am unsure.</p>

<p>I don't have much experience with Angular 2 or RxJS, but I am interested by both and am investigating them with the idea of using them in future projects</p>

<p><strong>Edit</strong></p>

<p>Here's my Plunker with a simple click use case <a href="http://plnkr.co/edit/u1A7ve2fAYigjwaZ0x1v?p=preview" rel="nofollow">http://plnkr.co/edit/u1A7ve2fAYigjwaZ0x1v?p=preview</a></p>