ProxyProvider6<T, T2, T3, T4, T5, T6, R> class
A provider that builds a value based on other providers.
The exposed value is built through either create
or update
, then passed
to InheritedProvider.
As opposed to create
, update
may be called more than once.
It will be called once the first time the value is obtained, then once
whenever ProxyProvider rebuilds or when one of the providers it depends on
updates.
ProxyProvider comes in different variants such as ProxyProvider2. This is syntax sugar on the top of ProxyProvider0.
As such, ProxyProvider<A, Result>
is equal to:
ProxyProvider0<Result>(
update: (context, result) {
final a = Provider.of<A>(context);
return update(context, a, result);
}
);
Whereas ProxyProvider2<A, B, Result>
is equal to:
ProxyProvider0<Result>(
update: (context, result) {
final a = Provider.of<A>(context);
final b = Provider.of<B>(context);
return update(context, a, b, result);
}
);
This last parameter of update
is the last value returned by either
create
or update
.
It is null
by default.
update
must not be null
.
See also:
- Provider, which matches the behavior of ProxyProvider but has only
a
create
callback.
- Inheritance
-
- Object
- SingleChildStatelessComponent
- InheritedProvider<
R> - ProxyProvider0<
R> - ProxyProvider6
Constructors
-
ProxyProvider6({Key? key, Create<
R> ? create, required ProxyProviderBuilder6<T, T2, T3, T4, T5, T6, R> update, UpdateShouldNotify<R> ? updateShouldNotify, Dispose<R> ? dispose, bool? lazy, TransitionBuilder? builder, Component? child}) -
Initializes
key
for subclasses.
Properties
- builder → TransitionBuilder?
-
Syntax sugar for obtaining a
BuildContext
that can read the provider created.finalinherited - hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one component replaces another component in the tree.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
build(
BuildContext context) → Iterable< Component> -
Describes the part of the user interface represented by this component.
inherited
-
buildWithChild(
BuildContext context, Component? child) → Iterable< Component> -
A build method that receives an extra
child
parameter.inherited -
createElement(
) → _InheritedProviderElement< R> -
Creates a
StatelessElement
to manage this component's location in the tree.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited