debounce<R> method

  1. @visibleForTesting
  2. @protected
FutureOr<R?> debounce<R>(
  1. Object tag,
  2. Duration duration,
  3. FutureOr<R> action(), {
  4. Duration? maxDuration,
})

debounce 防抖: 停止操作后等待 duration 执行最后一次。 maxDuration: 可选,解决“无限重置”问题。如果持续触发超过此时间,强制执行一次。

Implementation

@visibleForTesting
@protected
FutureOr<R?> debounce<R>(
  Object tag,
  Duration duration,
  FutureOr<R> Function() action, {
  Duration? maxDuration,
}) {
  return _slowly.debounce(
    tag,
    action,
    duration: duration,
    maxDuration: maxDuration,
  );
}