ViewStateBuilder<T, B extends BlocBase<ViewState<T> > > class
ViewStateBuilder is responsible for building the UI based on the ViewState
.
It's a wrapper over the BlocBuilder
widget so it accepts a bloc
object and
a set of handy callbacks, which corresponds to each possible state:
initial
builder for the the initial state,
loading
builder for the data loading state,
refreshing
builder for the data refreshing state,
data
builder for the data state,
empty
builder for for no result state,
error
builder function for an error state.
buildWhen
a condition to determine whether to rebuild the view
with the current state
T
- the type of items,
B
- the type of bloc.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- ViewStateBuilder
Constructors
-
ViewStateBuilder({Key? key, B? bloc, @Deprecated('This builder will be removed. Use "initial" instead.') InitialBuilder? onReady, InitialBuilder? initial, @Deprecated('This builder will be removed. Use "loading" instead.') LoadingBuilder? onLoading, LoadingBuilder? loading, @Deprecated('This builder removed. Use "refreshing" instead.') RefreshingBuilder<
T> ? onRefreshing, RefreshingBuilder<T> ? refreshing, @Deprecated('This builder removed. Use "data" instead.') SuccessBuilder<T> ? onSuccess, DataBuilder<T> ? data, @Deprecated('This builder removed. Use "none" instead.') EmptyBuilder? onEmpty, EmptyBuilder? empty, @Deprecated('This builder removed. Use "none" instead.') ErrorBuilder? onError, ErrorBuilder? error, BlocBuilderCondition<ViewState< ? buildWhen})T> >
Properties
- bloc → B?
-
The
bloc
that theBlocBuilderBase
will interact with. If omitted,BlocBuilderBase
will automatically perform a lookup usingBlocProvider
and the currentBuildContext
.finalinherited -
builder
→ BlocWidgetBuilder<
ViewState< T> > -
The
builder
function which will be invoked on each widget build. Thebuilder
takes theBuildContext
and currentstate
and must return a widget. This is analogous to thebuilder
function in StreamBuilder.finalinherited -
buildWhen
→ BlocBuilderCondition<
ViewState< ?T> > -
An optional
buildWhen
can be implemented for more granular control over how oftenBlocBuilder
rebuilds.buildWhen
should only be used for performance optimizations as it provides no security about the state passed to the builder function.buildWhen
will be invoked on eachbloc
state
change.buildWhen
takes the previousstate
and currentstate
and must return a bool which determines whether or not the builder function will be invoked. The previousstate
will be initialized to thestate
of thebloc
when theBlocBuilder
is initialized.buildWhen
is optional and if omitted, it will default totrue
.finalinherited - hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
build(
BuildContext context, ViewState< T> state) → Widget -
Returns a widget based on the
BuildContext
and currentstate
.inherited -
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< BlocBuilderBase< B, ViewState< >T> > -
Creates the mutable state for this widget at a given location in the tree.
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited