app_pages.dart 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import 'package:clean/module/home/home_controller.dart';
  2. import 'package:clean/module/locations_photo/locations_photo_controller.dart';
  3. import 'package:clean/module/locations_photo/locations_photo_view.dart';
  4. import 'package:clean/module/main/main_view.dart';
  5. import 'package:clean/module/people_photo/people_photo_controller.dart';
  6. import 'package:clean/module/people_photo/people_photo_view.dart';
  7. import 'package:clean/module/similar_photo/similar_photo_controller.dart';
  8. import 'package:clean/module/similar_photo/similar_photo_view.dart';
  9. import 'package:get/get.dart';
  10. import 'package:get/get_core/src/get_main.dart';
  11. import 'package:get/get_instance/src/bindings_interface.dart';
  12. import '../module/main/main_controller.dart';
  13. abstract class AppPage {
  14. static final pages = <GetPage>[
  15. ...generalPages,
  16. ];
  17. }
  18. abstract class RoutePath {
  19. static const mainTab = '/mainTab';
  20. static const peoplePhoto = '/peoplePhoto';
  21. static const similarPhoto = '/similarPhoto';
  22. static const locationsPhoto = '/locationsPhoto';
  23. }
  24. class AppBinding extends Bindings {
  25. @override
  26. void dependencies() {
  27. lazyPut(() => MainController());
  28. lazyPut(() => HomeController());
  29. lazyPut(() => PeoplePhotoController());
  30. lazyPut(() => SimilarPhotoController());
  31. lazyPut(() => LocationsPhotoController());
  32. }
  33. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  34. Get.lazyPut(builder, fenix: true);
  35. }
  36. }
  37. final generalPages = [
  38. GetPage(name: RoutePath.mainTab, page: () => MainTabPage()),
  39. GetPage(name: RoutePath.peoplePhoto, page: () => PeoplePhotoPage()),
  40. GetPage(name: RoutePath.similarPhoto, page: () => SimilarPhotoPage()),
  41. GetPage(name: RoutePath.locationsPhoto, page: () => LocationsPhotoPage()),
  42. ];