首页 > 解决方案 > 我应该在哪里初始化flutter_bloc中的块

问题描述

我正在使用 Flutter_bloc 包在颤动中使用 bloc 模式,但我想知道使用MultiBlocProvider内部 main 函数并在其中添加我的所有 bloc 是否是一个好习惯,如下所示:

  void main()async{
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(Mafqood());
}

class Mafqood extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
       return MultiBlocProvider(
         providers : [
           BlocProvider<AuthBloc>(
           create:  (context) => AuthBloc(AuthInitialState(), AuthRepository()),
          ),

           BlocProvider<LoginBloc>(
             create: (context) => LoginBloc(LoginInitialState(), AuthRepository()),
           ),

           BlocProvider<ProfileBloc>(
             create:  (context) => ProfileBloc(ProfileInitialState(), AuthRepository()),
           ),

         ],
         child: MaterialApp(

或者最好在我需要的地方添加集团?为什么?提前致谢。

标签: flutterdartflutter-bloc

解决方案


您应该像以前一样在 main 函数中使用 MultiBlocProvider 。这是最佳实践。这是供应商的目标。

编辑:

现在我意识到这里还有另一个答案。


推荐阅读