【发布时间】:2022-01-19 01:24:53
【问题描述】:
我可以直接在 BlocProvider 中使用 BlocBuilder 并访问整个树中的状态,还是应该在每个小部件上单独使用 BlocBuilder 如果我打算通过状态更改它?
现在我在顶层有这个结构并将状态注入到树的下部:
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MultiBlocProvider(
providers: [
BlocProvider<NavigationCubit>(create: (context) => NavigationCubit())
],
child: BlocBuilder<NavigationCubit, NavigationState>(
builder: (context, state) {
return WillPopScope(
onWillPop: () async => false,
child: const MaterialApp(
home: RootContainer(state),
),
);
},
),
);
}
}
【问题讨论】: