You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.5 KiB

2 weeks ago
import 'package:get/get.dart';
import 'package:problem_check_system/data/providers/connectivity_provider.dart';
2 weeks ago
import 'package:problem_check_system/data/providers/local_database.dart';
import 'package:problem_check_system/data/repositories/auth_repository.dart';
2 weeks ago
import 'package:problem_check_system/modules/auth/controllers/auth_controller.dart';
import 'package:problem_check_system/modules/home/controllers/home_controller.dart';
import 'package:problem_check_system/modules/my/controllers/my_controller.dart';
import 'package:problem_check_system/modules/problem/controllers/problem_controller.dart';
class HomeBinding implements Bindings {
@override
void dependencies() {
final LocalDatabase database = Get.find<LocalDatabase>();
final ConnectivityProvider connectivityProvider =
Get.find<ConnectivityProvider>();
2 weeks ago
// 惰性注入 HomeController,只在第一次被调用时创建
Get.lazyPut<HomeController>(() => HomeController());
Get.lazyPut<ProblemController>(
() => ProblemController(
localDatabase: database,
connectivityProvider: connectivityProvider,
dioProvider: Get.find(),
),
fenix: true,
2 weeks ago
);
Get.lazyPut<MyController>(() => MyController());
Get.lazyPut<AuthRepository>(
() => AuthRepository(
dioProvider: Get.find(),
storage: Get.find(),
connectivityProvider: connectivityProvider,
),
2 weeks ago
);
Get.lazyPut<AuthController>(
() => AuthController(authRepository: Get.find()),
fenix: true,
);
2 weeks ago
}
}