我有一个名为A的类,它是Stateless
类,而我有一个名为B的类,它是Stateful
类
A类的构建方法如下
@override
Widget build(BuildContext context) {
return BlocProvider(
bloc: DashboardListBloc(),
child: Scaffold(
body: SingleChildScrollView(
child: Column(
children: <Widget>[
SafeArea(child: _dashboardAppBar(context)),
SizedBox(
height: 10.0,
),
B() // this is class B
],
),
)),
);
我在B类中声明了我的bloc对象
假设在类A的主体中,我用SingleChildScrollView
包装了RefreshIndicator
,所以在其refresh属性中如何
我应该调用Bloc类的方法,其引用在B类中定义。
我想到了将所有内容移至B类并删除A类,
这会导致另一个问题,因为我必须在init方法中初始化Bloc
,并且在构建之前会调用init,
bloc将始终为null,因为我将在类B的构建方法中使用BlocProvider
InheritedWidget