Angular 2 已经有一个FormControl,它公开了一个可以订阅的 valueChanges 可观察对象。
这是一个有效的Plunker和代码:
重要的部分是:
- [FormControl]="model" (在输入元素中)
- model = new FormControl() (来自@angular/forms)
import {Component} from '@angular/core';
import {FormControl} from '@angular/forms';
@Component({
selector: 'my-app',
template: `
Some Value:
<input type="text" [formControl]="model" />
<div>{{model.value}}</div>
<span *ngFor="let val of values">{{val}},</span>
`
})
export class AppComponent {
model:FormControl = new FormControl()
values = [];
constructor() {
this.model.valueChanges.subscribe(s=>this.values.push(s));
}
}
此外,在您的 AppModule 中,您需要导入ReactiveFormsModule
import { ReactiveFormsModule } from '@angular/forms';
...
@NgModule({
imports: [
...
ReactiveFormsModule
],
declarations: [...],
bootstrap: [...]
})
export class AppModule { }