这是CaiYouHui前端,一个关于flutter的安卓app,前端使用flutter实现

injection_container.dart 949B

1234567891011121314151617181920212223242526
  1. import 'package:get_it/get_it.dart';
  2. import 'package:shared_preferences/shared_preferences.dart';
  3. import 'data/datasources/local/shared_prefs.dart';
  4. import 'data/repositories/auth_repository.dart';
  5. import 'data/repositories/user_repository.dart';
  6. import 'presentation/providers/auth_provider.dart';
  7. import 'presentation/providers/user_provider.dart';
  8. final GetIt sl = GetIt.instance;
  9. Future<void> init() async {
  10. // External dependencies
  11. final sharedPreferences = await SharedPreferences.getInstance();
  12. sl.registerLazySingleton(() => sharedPreferences);
  13. // Data sources
  14. sl.registerLazySingleton(() => SharedPrefs(sl()));
  15. // Repositories
  16. sl.registerLazySingleton(() => AuthRepository(localDataSource: sl()));
  17. sl.registerLazySingleton(() => UserRepository(localDataSource: sl()));
  18. // Providers
  19. sl.registerFactory(() => AuthProvider(authRepository: sl()));
  20. sl.registerFactory(() => UserProvider(userRepository: sl()));
  21. }