使用 get_it 时 flutter bloc dispose

flutter bloc dispose while using get_it

我有一个问题,关于在 get_it 包中创建 bloc 时是否需要处理它?例如,我有一个名为 LoginBloc.and 的 bloc 我创建它的方式是:

final GetIt sl = GetIt.instance;
sl.registerFactory(() => LoginBloc(sl(), sl()));

我这样提供:

    BlocProvider(
       child: LogInPage(),
          create: (BuildContext context) {
                return sl<LoginBloc>();
               }

我的问题是,当页面被处理或不需要时,bloc 提供程序是否处理 bloc,或者我必须手动处理它,因为我使用 get_it 包来创建它? 谢谢大家

BlocProvider 将在与 create 一起使用时自动处理 bloc 的关闭。

更多内容可以查看官方文档。 https://pub.dev/documentation/flutter_bloc/latest/flutter_bloc/BlocProvider-class.html

当您通过 sl.registerFactory 注册某些内容时,GetIt 将在您每次访问它时创建新实例。