【发布时间】:2021-01-03 05:27:45
【问题描述】:
我用dart BlocProvider<ABloc,AState>包裹我的脚手架
但是当我使用 showDialog func 和 showDialog 我想从上下文或 BlocBuilder 访问 ABloc
不包含块并抛出错误
在这种情况下有没有办法访问 bloc
(在我的对话框中,我显示了用于获取用户名的文本,因此我想访问 bloc)
class MyHomePageState extends StateLessWidget {
@override
Widget build(BuildContext context) {
return BlocProvider(
lazy: false,
create: (context) => EditColorBloc(context.bloc<RetrieveColorBloc>()),
child: MainScafold());
}
}
class MainScafold extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("sina"),
),
floatingActionButton:FloatingActionButton(
child: Icon(Icons.add),
onPressed: () => showDialog(
context: context,
builder: (ctx) {
// show dialog and use
// context o BlocBuilder to access
// EditColorBloc
// throw error BlocProvider.of() called with a context that does
// not contain a Cubit of type EditColorBloc
}
)
}
}
【问题讨论】:
标签: flutter dart flutter-bloc