app_pages.dart 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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/privacy/privacy_view.dart';
  6. import 'package:clean/module/people_photo/people_photo_controller.dart';
  7. import 'package:clean/module/people_photo/people_photo_view.dart';
  8. import 'package:clean/module/similar_photo/similar_photo_controller.dart';
  9. import 'package:clean/module/similar_photo/similar_photo_view.dart';
  10. import 'package:get/get.dart';
  11. import 'package:get/get_core/src/get_main.dart';
  12. import 'package:get/get_instance/src/bindings_interface.dart';
  13. import '../module/main/main_controller.dart';
  14. import '../module/privacy/privacy_controller.dart';
  15. abstract class AppPage {
  16. static final pages = <GetPage>[
  17. ...generalPages,
  18. ];
  19. }
  20. abstract class RoutePath {
  21. static const mainTab = '/mainTab';
  22. static const privacy = '/privacy';
  23. static const peoplePhoto = '/peoplePhoto';
  24. static const similarPhoto = '/similarPhoto';
  25. static const locationsPhoto = '/locationsPhoto';
  26. static const screenshots = '/screenshots';
  27. }
  28. class AppBinding extends Bindings {
  29. @override
  30. void dependencies() {
  31. lazyPut(() => MainController());
  32. lazyPut(() => HomeController());
  33. lazyPut(() => PrivacyController());
  34. lazyPut(() => PeoplePhotoController());
  35. lazyPut(() => SimilarPhotoController());
  36. lazyPut(() => LocationsPhotoController());
  37. lazyPut(() => LocationsPhotoPage());
  38. }
  39. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  40. Get.lazyPut(builder, fenix: true);
  41. }
  42. }
  43. final generalPages = [
  44. GetPage(name: RoutePath.mainTab, page: () => MainTabPage()),
  45. GetPage(name: RoutePath.privacy, page: () => PrivacyPage()),
  46. GetPage(name: RoutePath.peoplePhoto, page: () => PeoplePhotoPage()),
  47. GetPage(name: RoutePath.similarPhoto, page: () => SimilarPhotoPage()),
  48. GetPage(name: RoutePath.locationsPhoto, page: () => LocationsPhotoPage()),
  49. ];