当输入满足要求时,执行操作



当输入字段中输入的字符串到达给定的长度时,我想执行操作(基本上是提交表单),使用Angular2 。我尝试使用Angular2的控件,但似乎并不是为此。

我可以使用jquery或vanilla javaScript做到这一点,但我想知道是否有更多的" angular2"方法。

<input type="text" value="{{userInput}}" class="form-control">
// When userInput > 3, submit form

这个框架是相对较新的,我在互联网上找不到任何解决方案,尽管它可能非常简单。有人有主意吗?

谢谢。

您可以将输入的控件关联并在其valueChanges属性上订阅。

这是一个样本:

@Component({
  (...)
  template: `
    <input type="text" value="{{userInput}}"
           class="form-control"
           [ngFormControl]="ctrl">
  `
})
export class SomeComponent {
  constructor() {
    this.ctrl = new Control();
    this.ctrl.valueChanges
          .filter((value) => {
            return (value.length > 3);
          })
          .subscribe((value) => {
            // do something
          });
  }
}

最新更新