angular - 从 Angular 2 中的模型获取可观察值

标签 angular rxjs observable

我在 Angular 2 组件中有一个输入

<input [(ngModel)]="title"></input>

如何获取用户更改模型时的可观察值?

最佳答案

您可以这样使用 ngModelChange 事件:

<input [(ngModel)]="title" (ngModelChange)="someMethod($event)"></input>

在示例中,更新模型时将调用 someMethod 方法。 $event 对象将包含新值。

您只能通过控件(ngControlngFormControl)获取可观察对象:

this.ctrl.valueChanges.subscribe(val => {
  (...)
});

如果你想通过 ngModel 来利用 observable,你需要自己实现它:

titleUpdated$:Subject<string> = new Subject();

someMethod(val) {
  this.titleUpdated$.next(val);
}

关于angular - 从 Angular 2 中的模型获取可观察值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37306010/

相关文章:

javascript - Angular 2删除子组件中数组的选定项

angular - 类型 'catchError' 上不存在属性 'Observable<HttpEvent<any>>'

angular - 如何处理HTTP请求中的多个错误代码方案

javascript - 带有 ionic 搜索栏焦点的 ionic 触发模式打开功能 - 单击不起作用

javascript - 使用 angular2 从服务更新组件中的变量更改

javascript - 从 Observable<T> 过滤所有 'null' 值

javascript - 在父方法中调用 subscribe 方法

angular - 如何在 Angular 2 中使用 "chain"两个单独的可观察对象

typescript - Angular 2 rc1 - 如何正确使用路由器

javascript - RxJS - future 的插入不可观察?