AsyncNotifier<State> class abstract

A Notifier implementation that is asynchronously initialized.

This is similar to a FutureProvider but allows to perform side-effects by defining public methods.

It is commonly used for:

  • Caching a network request while also allowing to perform side-effects. For example, build could fetch information about the current "user". And the AsyncNotifier could expose methods such as "setName", to allow changing the current user name.
  • Initializing a Notifier from an asynchronous source of data. For example, obtaining the initial state of Notifier from a local database.

When using autoDispose or family, your notifier type changes. Instead of extending AsyncNotifier, you should extend either:

Constructors

AsyncNotifier()

Properties

future Future<State>
Obtains a Future that resolves with the first state value that is not AsyncLoading.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
ref AsyncNotifierProviderRef<State>
The Ref from the provider associated with this AsyncNotifier.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
state AsyncValue<State>
The value currently exposed by this AsyncNotifier.
getter/setter pairinherited

Methods

build() FutureOr<State>
Initialize an AsyncNotifier.
listenSelf(void listener(AsyncValue<State>? previous, AsyncValue<State> next), {void onError(Object error, StackTrace stackTrace)?}) → void
Listens to changes on the value exposed by this provider.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited
update(FutureOr<State> cb(State), {FutureOr<State> onError(Object err, StackTrace stackTrace)?}) Future<State>
A function to update state from its previous value, while abstracting loading/error cases for state.
inherited
updateShouldNotify(AsyncValue<State> previous, AsyncValue<State> next) bool
A method invoked when the state exposed by this AsyncNotifier changes.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited