簡単な質問ですが、この件に関するドキュメントはありません:Polymer 2.0?)にデバウンサーはありますか?もしそうなら、どのように使用できますか?this.debounce
は1.0のインスタンスメソッドでしたが、消えたようです。
前もって感謝します!
1.x this.debounce()
メソッドは_Polymer.LegacyElementMixin
_経由で使用できます。
_class XFoo extends Polymer.LegacyElementMixin(Polymer.Element) {
...
_onClick() {
this.debounce('myDebouncer', callback, 2000);
}
}
_
2.0に相当するものは Polymer.Debouncer.debounce(debouncer, asyncModule, cb)
です。ここで、
debouncer
Polymer.Debouncer.debounce()
から返された_Polymer.Debouncer
_のインスタンスで、デバウンサージョブを一意に識別するために使用されます。これは、1.xデバウンサージョブ名文字列と同等です。これは、最初はundefined
/null
にして、新しいインスタンスを作成できます。
asyncModule
次のいずれか:
cb
asyncModule
が完了したときに呼び出すコールバック
この関数は _Polymer.Debouncer
_ インスタンスを返します。このインスタンスには、1.x cancel()
と同等のthis.cancelDebouncer(JOB_NAME)
メソッドがあります。そのインスタンスは、デバウンスが正しく機能するように、次の呼び出しでdebounce()
メソッドに渡される必要があります。
使用例:
_class XFoo extends Polymer.Element {
...
_onClick() {
this._debouncer = Polymer.Debouncer.debounce(
this._debouncer, // initially undefined
Polymer.Async.timeOut.after(2000),
callback);
}
}
_