【问题标题】:angular2, directive input OnChanges delay(debounce)?angular2,指令输入 OnChanges 延迟(去抖动)?
【发布时间】:2016-06-11 20:32:56
【问题描述】:

在 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 angular2-directives


    【解决方案1】:

    Angular 不提供任何东西。已经讨论过,并且有一个未解决的问题 AFAIR。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-10
      • 1970-01-01
      • 1970-01-01
      • 2019-06-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多