BlocProvider<T extends Bloc> class
Provides a Bloc and will automatically wrap and provide the equivalent BlocNotifier and BlocEventChannel
Also provides static functions to get the Bloc when provided with the BuildContext
If you wish to reduce the nesting of using multiple BlocProviders, look into using MultiBlocProvider with some BlocBuilders
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- BlocProvider
Constructors
- BlocProvider({required T create(BuildContext, BlocEventChannel?), required Widget child, Key? key})
-
create
generates the bloc that will be provided.const -
BlocProvider.fromBuilder({required BlocBuilder<
T> builder, required Widget child}) -
builder
is used to create the bloc to be provided.factory
Properties
- child → Widget
-
The child to whom the bloc will be provied.
final
- create → T Function(BuildContext, BlocEventChannel?)
-
The function to create the instance of the bloc to be provided.
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(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< BlocProvider< T> > -
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, 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
Static Methods
-
read<
T extends Bloc> (BuildContext context) → T -
Similar to the
ReadContext.read
method from the Provider package. -
select<
T extends Bloc, R> (BuildContext context, R selector(T)) → R -
Similar to the
SelectContext.select
method from the Provider package. -
watch<
T extends Bloc> (BuildContext context) → T -
Similar to the
WatchContext.watch
method from the Provider package.