app_pages.dart 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. import 'package:get/get.dart';
  2. import 'package:location/di/get_it.dart';
  3. import 'package:location/module/about/about_controller.dart';
  4. import 'package:location/module/about/about_page.dart';
  5. import 'package:location/module/analyse/location_analyse_page.dart';
  6. import 'package:location/module/browser/browser_controller.dart';
  7. import 'package:location/module/browser/browser_view.dart';
  8. import 'package:location/module/feedback/feed_back_controller.dart';
  9. import 'package:location/module/feedback/feed_back_page.dart';
  10. import 'package:location/module/friend/friend_controller.dart';
  11. import 'package:location/module/friend/friend_page.dart';
  12. import 'package:location/module/friend/setting/friend_setting_controller.dart';
  13. import 'package:location/module/friend/setting/friend_setting_page.dart';
  14. import 'package:location/module/login/login_controller.dart';
  15. import 'package:location/module/main/main_page.dart';
  16. import 'package:location/module/member/member_controller.dart';
  17. import 'package:location/module/member/member_page.dart';
  18. import 'package:location/module/mine/mine_page.dart';
  19. import 'package:location/module/news/news_page.dart';
  20. import 'package:location/module/news/pending_list/news_pending_list_controller.dart';
  21. import 'package:location/module/news/pending_list/news_pending_list_page.dart';
  22. import 'package:location/module/permission/permission_setting_controller.dart';
  23. import 'package:location/module/permission/permission_setting_page.dart';
  24. import 'package:location/module/track/track_detail/track_detail_controller.dart';
  25. import 'package:location/module/track/track_detail/track_detail_page.dart';
  26. import 'package:location/module/urgent_contact/add_contact/add_urgent_contact_controller.dart';
  27. import 'package:location/module/urgent_contact/urgent_contact_controller.dart';
  28. import 'package:location/module/urgent_contact/urgent_contact_page.dart';
  29. import '../module/add_friend/add_friend_dialog_controller.dart';
  30. import '../module/login/login_page.dart';
  31. import '../module/main/main_controller.dart';
  32. import '../module/mine/mine_controller.dart';
  33. import '../module/news/news_controller.dart';
  34. import '../module/splash/splash_page.dart';
  35. import '../module/track/track_controller.dart';
  36. import '../module/track/track_page.dart';
  37. abstract class AppPage {
  38. static final pages = <GetPage>[...generalPages];
  39. }
  40. abstract class RoutePath {
  41. static const splash = '/';
  42. static const mainTab = '/mainTab';
  43. static const login = '/login';
  44. static const mine = '/mine';
  45. static const browser = '/browser';
  46. static const friend = '/friend';
  47. static const friendSetting = '/friendSetting';
  48. static const member = '/member';
  49. static const track = '/track';
  50. static const trackDetail = '/trackDetail';
  51. static const news = '/news';
  52. static const newsPendingList = '/newsPendingList';
  53. static const urgentContact = '/urgentContact';
  54. static const feedback = '/feedback';
  55. static const about = '/about';
  56. static const permissionSetting = '/permissionSetting';
  57. static const locationAnalyse = '/locationAnalyse';
  58. }
  59. class AppBinding extends Bindings {
  60. @override
  61. void dependencies() {
  62. lazyPut(() => getIt.get<MainController>());
  63. lazyPut(() => getIt.get<AddFriendDialogController>());
  64. lazyPut(() => getIt.get<LoginController>());
  65. lazyPut(() => getIt.get<MineController>());
  66. lazyPut(() => getIt.get<BrowserController>());
  67. lazyPut(() => getIt.get<FriendController>());
  68. lazyPut(() => getIt.get<FriendSettingController>());
  69. lazyPut(() => getIt.get<MemberController>());
  70. lazyPut(() => getIt.get<TrackController>());
  71. lazyPut(() => getIt.get<NewsController>());
  72. lazyPut(() => getIt.get<NewsPendingListController>());
  73. lazyPut(() => getIt.get<UrgentContactController>());
  74. lazyPut(() => getIt.get<AddUrgentContactController>());
  75. lazyPut(() => getIt.get<FeedBackController>());
  76. lazyPut(() => getIt.get<AboutController>());
  77. lazyPut(() => getIt.get<PermissionSettingController>());
  78. lazyPut(() => getIt.get<TrackDetailController>());
  79. }
  80. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  81. Get.lazyPut(builder, fenix: true);
  82. }
  83. }
  84. final generalPages = [
  85. GetPage(name: RoutePath.splash, page: () => SplashPage()),
  86. GetPage(name: RoutePath.mainTab, page: () => MainPage()),
  87. GetPage(name: RoutePath.login, page: () => LoginPage()),
  88. GetPage(name: RoutePath.browser, page: () => BrowserPage()),
  89. GetPage(name: RoutePath.mine, page: () => MinePage()),
  90. GetPage(name: RoutePath.friend, page: () => FriendPage()),
  91. GetPage(name: RoutePath.friendSetting, page: () => FriendSettingPage()),
  92. GetPage(name: RoutePath.member, page: () => MemberPage()),
  93. GetPage(name: RoutePath.track, page: () => TrackPage()),
  94. GetPage(name: RoutePath.news, page: () => NewsPage()),
  95. GetPage(name: RoutePath.newsPendingList, page: () => NewsPendingListPage()),
  96. GetPage(name: RoutePath.urgentContact, page: () => UrgentContactPage()),
  97. GetPage(name: RoutePath.feedback, page: () => FeedBackPage()),
  98. GetPage(name: RoutePath.about, page: () => AboutPage()),
  99. GetPage(name: RoutePath.trackDetail, page: () => TrackDetailPage()),
  100. GetPage(
  101. name: RoutePath.permissionSetting, page: () => PermissionSettingPage()),
  102. GetPage(name: RoutePath.locationAnalyse, page: () => LocationAnalysePage()),
  103. ];