ReactionBuilder class
ReactionBuilder is useful for triggering reactions via a builder function rather
than creating a custom StatefulWidget for handling the same.
Without a ReactionBuilder you would normally have to create a StatefulWidget
where the initState()
would be used to setup the reaction and then dispose it off
in the dispose()
method.
Although simple, this little helper Widget eliminates the need to create such a
widget and handles the lifetime of the reaction correctly. To use it, pass a
builder that takes in a BuildContext and prepares the reaction. It should
end up returning a ReactionDisposer
. This will be disposed when the ReactionBuilder
is disposed. The child
Widget gets rendered as part of the build process.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- SingleChildStatefulWidget
- ReactionBuilder
Constructors
- ReactionBuilder({Key? key, Widget? child, required ReactionBuilderFunction builder})
-
const
Properties
- builder → ReactionBuilderFunction
-
final
- 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
-
createElement(
) → SingleChildStatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → ReactionBuilderState -
Creates the mutable state for this widget at a given location in the tree.
override
-
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}) → 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