delayed_future
⏳ A Dart extension that allows to delay your Futures.
Why?
Sometimes it makes sense to delay your futures. For example, if you're making an API call and showing a loader. The response might come too quick fast.
By making sure that the execution will run for at least a little, like 350 ms, we'll make the loader more noticeable and the UX more convenient.
How to use
Install the package
Add the dependency to pubspec.yaml:
dependencies:
delayed_future: ^1.0.3
Use it!
// This will use default values from the config.
await anyFuture().delayResult();
await anotherFuture().delayResult(
// Custom duration!
duration: const Duration(milliseconds: 150),
// If throwImmediatelyOnError is true and `anotherFuture` throws an exception,
// the execution will fail immediately.
// Otherwise it will run for at least the given time.
throwImmediatelyOnError: true,
);
// Or use it directly on a function
await anyFuture.delayCall();
await anotherFuture.delayCall(Duration(milliseconds: 500));
Set the default values
You can change the default values of duration
and throwImmediatelyOnError
like this:
DelayedFuture.duration = const Duration(milliseconds: 500);
DelayedFuture.throwImmediatelyOnError = true;
Libraries
- delayed_future
- A Dart extension that allows to delay your Futures.