child method
Widget
child(
- Widget builder(
- BuildContext context,
- T data,
- Widget child
- required Widget child,
- Key? key,
Creates an inline reactive widget with an isolated static child subtree and fallback protection.
When _bloom contains valid data, invokes builder with BuildContext, data payload, and child.
When _bloom does not contain data (BloomState.hasData == false), returns child directly,
protecting against extraction exceptions during uninitialized states.
builder: Reactive builder callback receiving BuildContext, current data payload, and cachedchild.child: The static subtree to preserve across rebuilds, also used as fallback when uninitialized.key: Optional widget key.
Requires:
buildermust be a pure widget construction callback.
Ensures:
- Returns a reactive Widget isolating
childfrom rebuilds and usingchildas uninitialized fallback.
Examples
userBloom.build.child(
(context, user, child) => Row(children: [Text(user.name), child]),
child: const HeavyAvatar(),
);
Implementation
@pragma('vm:prefer-inline')
Widget child(
Widget Function(BuildContext context, T data, Widget child) builder, {
required Widget child,
Key? key,
}) =>
_InlineSingleBloomWithChildWidget<T>(
key: key,
bloom: _bloom,
builder: builder,
child: child,
);