whenOrNull<R> method

R? whenOrNull<R>({
  1. bool skipLoadingOnReload = false,
  2. bool skipLoadingOnRefresh = true,
  3. bool skipError = false,
  4. R? data(
    1. T data
    )?,
  5. R? error(
    1. Object error,
    2. StackTrace stackTrace
    )?,
  6. R? loading()?,
})

Perform actions conditionally based on the state of the AsyncValue.

Returns null if AsyncValue was in a state that was not handled. This is similar to maybeWhen where orElse returns null.

Implementation

R? whenOrNull<R>({
  bool skipLoadingOnReload = false,
  bool skipLoadingOnRefresh = true,
  bool skipError = false,
  R? Function(T data)? data,
  R? Function(Object error, StackTrace stackTrace)? error,
  R? Function()? loading,
}) {
  return when(
    skipError: skipError,
    skipLoadingOnRefresh: skipLoadingOnRefresh,
    skipLoadingOnReload: skipLoadingOnReload,
    data: data ?? (_) => null,
    error: error ?? (err, stack) => null,
    loading: loading ?? () => null,
  );
}