app_pages.dart 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import 'package:get/get.dart';
  2. import 'package:location/di/get_it.dart';
  3. import 'package:location/module/browser/browser_controller.dart';
  4. import 'package:location/module/friend/friend_controller.dart';
  5. import 'package:location/module/friend/friend_page.dart';
  6. import 'package:location/module/friend/setting/friend_setting_controller.dart';
  7. import 'package:location/module/friend/setting/friend_setting_page.dart';
  8. import 'package:location/module/login/login_controller.dart';
  9. import 'package:location/module/main/main_page.dart';
  10. import 'package:location/module/member/member_controller.dart';
  11. import 'package:location/module/member/member_page.dart';
  12. import 'package:location/module/mine/mine_page.dart';
  13. import 'package:location/module/news/news_page.dart';
  14. import '../module/add_friend/add_friend_dialog_controller.dart';
  15. import '../module/login/login_page.dart';
  16. import '../module/main/main_controller.dart';
  17. import '../module/mine/mine_controller.dart';
  18. import '../module/news/news_controller.dart';
  19. import '../module/splash/splash_page.dart';
  20. import '../module/track/track_controller.dart';
  21. import '../module/track/track_page.dart';
  22. abstract class AppPage {
  23. static final pages = <GetPage>[...generalPages];
  24. }
  25. abstract class RoutePath {
  26. static const splash = '/';
  27. static const mainTab = '/mainTab';
  28. static const login = '/login';
  29. static const mine = '/mine';
  30. static const browser = '/browser';
  31. static const friend = '/friend';
  32. static const friendSetting = '/friendSetting';
  33. static const member = '/member';
  34. static const track = '/track';
  35. static const news = '/news';
  36. }
  37. class AppBinding extends Bindings {
  38. @override
  39. void dependencies() {
  40. lazyPut(() => getIt.get<MainController>());
  41. lazyPut(() => getIt.get<AddFriendDialogController>());
  42. lazyPut(() => getIt.get<LoginController>());
  43. lazyPut(() => getIt.get<MineController>());
  44. lazyPut(() => getIt.get<BrowserController>());
  45. lazyPut(() => getIt.get<FriendController>());
  46. lazyPut(() => getIt.get<FriendSettingController>());
  47. lazyPut(() => getIt.get<MemberController>());
  48. lazyPut(() => getIt.get<TrackController>());
  49. lazyPut(() => getIt.get<NewsController>());
  50. }
  51. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  52. Get.lazyPut(builder, fenix: true);
  53. }
  54. }
  55. final generalPages = [
  56. GetPage(name: RoutePath.splash, page: () => SplashPage()),
  57. GetPage(name: RoutePath.mainTab, page: () => MainPage()),
  58. GetPage(name: RoutePath.login, page: () => LoginPage()),
  59. GetPage(name: RoutePath.mine, page: () => MinePage()),
  60. GetPage(name: RoutePath.friend, page: () => FriendPage()),
  61. GetPage(name: RoutePath.friendSetting, page: () => FriendSettingPage()),
  62. GetPage(name: RoutePath.member, page: () => MemberPage()),
  63. GetPage(name: RoutePath.track, page: () => TrackPage()),
  64. GetPage(name: RoutePath.news, page: () => NewsPage()),
  65. ];