MultiRepositoryProvider class
Merges multiple RepositoryProvider widgets into one widget tree.
MultiRepositoryProvider improves the readability and eliminates the need to nest multiple RepositoryProviders.
By using MultiRepositoryProvider we can go from:
RepositoryProvider<RepositoryA>(
create: (context) => RepositoryA(),
child: RepositoryProvider<RepositoryB>(
create: (context) => RepositoryB(),
child: RepositoryProvider<RepositoryC>(
create: (context) => RepositoryC(),
child: ChildA(),
)
)
)
to:
MultiRepositoryProvider(
providers: [
RepositoryProvider<RepositoryA>(create: (context) => RepositoryA()),
RepositoryProvider<RepositoryB>(create: (context) => RepositoryB()),
RepositoryProvider<RepositoryC>(create: (context) => RepositoryC()),
],
child: ChildA(),
)
MultiRepositoryProvider converts the RepositoryProvider list into a tree of nested RepositoryProvider widgets. As a result, the only advantage of using MultiRepositoryProvider is improved readability due to the reduction in nesting and boilerplate.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- Nested
- MultiRepositoryProvider
- Implemented types
- Available extensions
Constructors
-
MultiRepositoryProvider({required List<
SingleChildWidget> providers, required Widget child, Key? key}) - Merges multiple RepositoryProvider widgets into one widget tree.
Properties
- alignBottomCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the bottom center of its parent.no setter - alignBottomEnd → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the bottom end corner of its parent.no setter - alignBottomStart → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the bottom start corner of its parent.no setter - alignCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the center of its parent.no setter - alignEndCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the start center of its parent.no setter - alignStartCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the start center of its parent.no setter - alignTopCenter → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the top center of its parent.no setter - alignTopEnd → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the top end corner of its parent.no setter - alignTopStart → Widget
-
Available on Widget, provided by the AlignmentExtension extension
Aligns the widget to the top start corner of its parent.no setter - center → Widget
-
Available on Widget, provided by the CenterExtension extension
Wraps the widget with a Center widget.no setter - hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- ltr → Widget
-
Available on Widget, provided by the DirectionalityExtension extension
Wraps the current widget in a Directionality widget with TextDirection.ltr.no setter - rtl → Widget
-
Available on Widget, provided by the DirectionalityExtension extension
Wraps the current widget in a Directionality widget with TextDirection.rtl.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
alignedBox(
{double? width, double? height, AlignmentDirectional? alignment}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with specified width, height, and alignment. -
animatedOpacity(
bool isVisible, {Duration duration = const Duration(milliseconds: 300)}) → AnimatedOpacity -
Available on Widget, provided by the VisibilityExtension extension
Wraps the widget with an AnimatedOpacity widget to animate its visibility. -
box(
{double? width, double? height}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with both width and height. -
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
-
expandBox(
) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox that fills the available space in both dimensions. -
expanded(
{int flex = 1}) → Widget -
Available on Widget, provided by the FlexExtensions extension
Wraps the current widget with anExpandedwidget, allowing it to expand and fill available space in a flex container (e.g.,Row,Column). -
flexible(
{int flex = 1, FlexFit fit = FlexFit.loose}) → Widget -
Available on Widget, provided by the FlexExtensions extension
Wraps the current widget with aFlexiblewidget, allowing it to take flexible space within a flex container, but with more control over its layout behavior. -
flexibleBox(
{required double width, double? height}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with a flexible width and height. -
height(
double height) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with a specified height. -
hide(
bool isHidden) → Widget -
Available on Widget, provided by the VisibilityExtension extension
Conditionally hides the widget by replacing it with an empty widget (SizedBox.shrink). -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
paddedBox(
{double? width, double? height, EdgeInsets? padding}) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with padding around the child widget. -
paddingAll(
double value) → Widget -
Available on Widget, provided by the PaddingExtension extension
Wraps the widget with a Padding widget applying uniform padding on all sides. -
paddingOnly(
{double top = 0, double bottom = 0, double start = 0, double end = 0}) → Widget -
Available on Widget, provided by the PaddingExtension extension
Wraps the widget with a Padding widget using the specified EdgeInsets. -
paddingSymmetric(
{double vertical = 0, double horizontal = 0}) → Widget -
Available on Widget, provided by the PaddingExtension extension
Wraps the widget with a Padding widget applying symmetric padding. -
positioned(
{double? top, double? bottom, double? start, double? end, double? width, double? height}) → Widget -
Available on Widget, provided by the PositionedExtension extension
Wraps the widget with a PositionedDirectional widget. -
positionedDirectional(
{required TextDirection textDirection, double? top, double? bottom, double? start, double? end, double? width, double? height}) → Widget -
Available on Widget, provided by the PositionedExtension extension
Wraps the widget with a Positioned.directional widget. -
positionedFill(
{double? top, double? bottom, double? left, double? right}) → Widget -
Available on Widget, provided by the PositionedExtension extension
Wraps the widget with a Positioned.fill widget. -
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
-
visible(
bool isVisible) → Widget -
Available on Widget, provided by the VisibilityExtension extension
Wraps the widget with a Visibility widget to conditionally show or hide it. -
width(
double width) → Widget -
Available on Widget, provided by the SizedBoxExtension extension
Creates a SizedBox with a specified width.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited