您的位置:首页 > Web前端 > AngularJS

[Angular 2] Handling Click Events with Subjects

2016-04-26 03:26 645 查看
While Angular 2 usually uses event handlers to manage events and RxJS typically uses Observable.fromEvent, a good practice when using Angular 2 and RxJS combined is to use Subjects and push the value through each event so that you can use it as part of your stream.

import {Component} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
import 'rxjs/add/operator/map';
import {Subject} from 'rxjs/Subject';

@Component({
selector: 'app',
template: `
<button (click)="click$.next()">Update</button>
<h1>{{clock | async | date: 'yMMMMEEEEdjms'}}</h1>
`
})

class App {

click$ = new Subject();
public clock;
constructor(){
this.clock = this.click$.map( () => new Date());
}
}

bootstrap(App);


So here create a click$ subject, every time you click the button, it will map to a current date value.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: