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
blocthat theBlocBuilderBasewill interact with. If omitted,BlocBuilderBasewill automatically perform a lookup usingBlocProviderand the currentBuildContext.finalinherited -
builder
→ BlocWidgetBuilder<
ViewState< T> > -
The
builderfunction which will be invoked on each widget build. Thebuildertakes theBuildContextand currentstateand must return a widget. This is analogous to thebuilderfunction in StreamBuilder.finalinherited -
buildWhen
→ BlocBuilderCondition<
ViewState< ?T> > -
An optional
buildWhencan be implemented for more granular control over how oftenBlocBuilderrebuilds.buildWhenshould only be used for performance optimizations as it provides no security about the state passed to the builder function.buildWhenwill be invoked on eachblocstatechange.buildWhentakes the previousstateand currentstateand must return a bool which determines whether or not the builder function will be invoked. The previousstatewill be initialized to thestateof theblocwhen theBlocBuilderis initialized.buildWhenis 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
BuildContextand 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