私の main.dart ファイルは次のようになります。
home: MultiBlocProvider(
providers: [
BlocProvider<UserBloc>(
create: (BuildContext context) => UserBloc()..add(GetUser(userId:"5e0b62023b75dd60e22edaad")),
),
BlocProvider<TodoBloc>(
create: (BuildContext context)=> TodoBloc()..add(AddTodoEvent()),)
],
child: FirstScreen(),
),
FirstScreen でボタンを押すと、2 番目の画面に移動したいと考えています。
var router = new MaterialPageRoute(
builder: (BuildContext context){
return BlocProvider<UserBloc>(
create: (BuildContext context) => UserBloc(),
child: SecondScreen(),
);
});
Navigator.of(context).push(router);
正常に動作しますが、新しい UserBloc 初期状態が作成されます。私が欲しいのは、UserBlog で現在の状態を取得することです。
私はこれを試しました
UserBloc userBloc = BlocProvider.of<UserBloc>(context);
BlocProvider<CounterBloc>(
bloc: userBloc,
child: SecondScreen()
)
ブロックはエラーになります。SecondScreen に移動して同じ状態にする方法はありますか。