MultiBlocProvider class
Merges multiple BlocProvider widgets into one widget tree.
MultiBlocProvider improves the readability and eliminates the need to nest multiple BlocProviders.
By using MultiBlocProvider we can go from:
BlocProvider<BlocA>(
  create: (BuildContext context) => BlocA(),
  child: BlocProvider<BlocB>(
    create: (BuildContext context) => BlocB(),
    child: BlocProvider<BlocC>(
      create: (BuildContext context) => BlocC(),
      child: ChildA(),
    )
  )
)
to:
MultiBlocProvider(
  providers: [
    BlocProvider<BlocA>(
      create: (BuildContext context) => BlocA(),
    ),
    BlocProvider<BlocB>(
      create: (BuildContext context) => BlocB(),
    ),
    BlocProvider<BlocC>(
      create: (BuildContext context) => BlocC(),
    ),
  ],
  child: ChildA(),
)
MultiBlocProvider converts the BlocProvider list into a tree of nested BlocProvider widgets. As a result, the only advantage of using MultiBlocProvider is improved readability due to the reduction in nesting and boilerplate.
- Inheritance
- 
    - Object
- DiagnosticableTree
- Widget
- StatelessWidget
- Nested
- MultiBlocProvider
 
- Implemented types
Constructors
- 
          MultiBlocProvider({required List<SingleChildWidget> providers, required Widget child, Key? key})
- Merges multiple BlocProvider widgets into one widget tree.
Properties
Methods
- 
  build(BuildContext context) → Widget 
- 
  Describes the part of the user interface represented by this widget.
  inherited
- 
  createElement() → _NestedElement 
- 
  Creates a StatelessElement to manage this widget's 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