flutter iam在运行应用程序时使用provider和get_it包,它显示此错误

pgvzfuti  于 2023-06-30  发布在  Flutter
关注(0)|答案(1)|浏览(193)

错误状态:GetIt:类型为Dio的对象/工厂未在GetIt中注册。(你是不是不小心做了getIt sl = getIt. instance();而不是GetIt sl = GetIt. instance;你忘了注册了吗?)
我在get_it服务中添加了dio,但它仍然显示相同的错误

`Future\<void\> setup() async {
// sl.registerSingleton(Dio(sl()));
sl.registerSingleton(() =\> Dio());
sl.registerLazySingleton(() =\> DioClient(AppConstants.apiBaseURL, sl(),
loggingInterseptor: sl(), sharedPreferences: sl()));
sl.registerLazySingleton\<LoggingInterseptor\>(() =\> LoggingInterseptor());
sl.registerLazySingleton(() =\> SharedPreferencesProvider());

// User:----------------------------------------------------------------------
sl.registerLazySingleton(() =\> AuthProvider(authRepoUser: sl()));
sl.registerFactory(() =\> AuthRepoUser(
dioClient: sl(),
));
}\`
wnrlj8wa

wnrlj8wa1#

在注册示例时需要指定示例的类型,以获取示例:示例:

sl.registerLazySingleton<RemoteDataSource>(
        () => RemoteDataSourceImpl(sl()));

相关问题