こんにちは、フラッターの初心者です。私の質問は、ブロックを提供する正しい方法は何ですか? 名前付きルートセクションのメインファイルにテーマを提供することにしましたが、問題は、他のブロック内にブロックが必要な場合に提供できないことです。これが私のメインファイルルートセクションです。問題は、たとえば、AssetDevicesPageBlocブロックをassetPageブロックに提供したいのですが、アクセスできないため、どうすればそのようなことを行うことができますか。ブロックを間違った方法で提供していますか? 初めて、すべてのブロックを 1 か所で提供してから、各ウィジェットに blockprovider.value を使用したかったのですが、検索したところ、リソースの使用方法が間違っていることがわかりました。助けてください。ありがとう
return MaterialApp(
routes: {
'loginPage': (context) => BlocProvider(
child: LogInPage(),
create: (BuildContext context) {
return LoginBloc(
userRepository: userRepository,
authenticationBloc:
BlocProvider.of<AuthenticationBloc>(context));
},
),
'AssetDevicePage': (context) => MultiBlocProvider(
child: AssetDevicesPage(),
providers: [
BlocProvider(
create: (BuildContext context) => AssetDevicesPageBloc(
userRepository: userRepository,
dataBaseRepository: dataBaseRepository,
deviceRepository: deviceRepository)),
BlocProvider(
create: (BuildContext context) => DeviceViewSwitcherBloc(
dataBaseRepository, userRepository, deviceRepository)),
BlocProvider(
create: (BuildContext context) =>
LampBloc(deviceRepository, dataBaseRepository)),
],
),
'AssetPage': (context) => MultiBlocProvider(
providers: [
BlocProvider(
create: (BuildContext context) =>
CategoryBloc(userRepository, dataBaseRepository),
),
BlocProvider(
create: (BuildContext context) =>
AssetPageBloc(BlocProvider.of<CategoryBloc>(context)),
),
],
child: AssetPage(),
),
},