我有一个问题,关于在get_it包中创建块时是否需要处理它?例如,我有一个名为LoginBloc的团体,并且创建它的方式是:
final GetIt sl = GetIt.instance;
sl.registerFactory(() => LoginBloc(sl(), sl()));
我提供的方式是:
BlocProvider(
child: LogInPage(),
create: (BuildContext context) {
return sl<LoginBloc>();
}
我的问题是,在处理页面或不需要页面时,bloc提供程序是否会处理bloc,或者我必须手动处理它,因为我使用了get_it包来创建它? 谢谢大家
答案 0 :(得分:1)
BlocProvider与create一起使用时将自动处理bloc的关闭。
您可以查看官方文档以了解更多信息。 https://pub.dev/documentation/flutter_bloc/latest/flutter_bloc/BlocProvider-class.html
通过sl.registerFactory
注册某些内容时,GetIt每次访问它都会创建一个新实例。