angular2,指令输入 OnChanges 延迟(去抖动)?

angular2, directive input OnChanges delay(debounce)?

在 Angular1 中,我能够为 ng-model 添加去抖动时间。

在 Angular2 中,我们可以检测所有 input 上的变化。是否可以在每次输入变化时有一些去抖动时间。

在下面的 plunker 示例 http://plnkr.co/edit/JKYSek?p=preview 中,我键入 "hello world",但它对每次击键都有反应。

是否可以在不进行任何编程的情况下对每次更改进行一些延迟?

import { Directive, OnChanges } from "@angular/core";

@Directive({
  selector: '[my-directive]',
  inputs: [`myInput`]
}) 
export class MyDirective implements OnChanges {

  ngOnChanges(changes: {[key: string]: SimpleChange}) {
    console.log('changes :'+ changes.myInput.currentValue);
  }
}

Angular 不提供任何内容。已经讨论过了,还有一个悬而未决的问题 AFAIR。

作为解决方法,您可以转发到可观察对象或使用 Observable.fromEvent()debounce