throttle method

Effect<Value> throttle({
  1. required EffectID id,
  2. required Duration interval,
  3. ThrottleDirection direction = ThrottleDirection.leading,
  4. bool emitFirst = true,
})

Throttles emissions so that values are produced no more frequently than interval. The default scheduler controls the timing, and direction determines whether leading or trailing values are emitted.

Example:

final throttled = effect.throttle(
  id: "scroll",
  interval: const Duration(milliseconds: 300),
);

Implementation

Effect<Value> throttle({
  required EffectID id,
  required Duration interval,
  ThrottleDirection direction = ThrottleDirection.leading,
  bool emitFirst = true,
}) =>
    throttleWithScheduler(
      id: id,
      interval: interval,
      scheduler: defaultScheduler,
      direction: direction,
      emitFirst: emitFirst,
    );