app_pages.dart 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import 'package:get/get.dart';
  2. import 'package:keyboard/module/about/about_controller.dart';
  3. import 'package:keyboard/module/browser/browser_controller.dart';
  4. import 'package:keyboard/module/character/content/character_group_content_controller.dart';
  5. import 'package:keyboard/module/character_custom/character_custom_controller.dart';
  6. import 'package:keyboard/module/character_custom/detail/character_custom_detail_page.dart';
  7. import 'package:keyboard/module/feedback/feedback_controller.dart';
  8. import 'package:keyboard/module/keyboard/keyboard_controller.dart';
  9. import 'package:keyboard/module/keyboard_manage/keyboard_manage_controller.dart';
  10. import 'package:keyboard/module/login/login_controller.dart';
  11. import 'package:keyboard/module/mine/mine_controller.dart';
  12. import '../di/get_it.dart';
  13. import '../module/about/about_page.dart';
  14. import '../module/browser/browser_page.dart';
  15. import '../module/character/character_controller.dart';
  16. import '../module/character_custom/character_custom_page.dart';
  17. import '../module/character_custom/detail/character_custom_detail_controller.dart';
  18. import '../module/feedback/feedback_page.dart';
  19. import '../module/keyboard_manage/keyboard_manage_page.dart';
  20. import '../module/login/login_page.dart';
  21. import '../module/main/main_controller.dart';
  22. import '../module/main/main_page.dart';
  23. abstract class AppPage {
  24. static final pages = <GetPage>[...generalPages];
  25. }
  26. abstract class RoutePath {
  27. static const splash = '/';
  28. static const mainTab = '/mainTab';
  29. static const login = '/login';
  30. static const keyboardSetting = '/keyboardSetting';
  31. static const feedback = '/feedback';
  32. static const about = '/about';
  33. static const browser = '/browser';
  34. static const keyboardManage = '/keyboardManage';
  35. static const characterCustom = '/characterCustom';
  36. static const characterCustomDetail = '/characterCustomDetail';
  37. }
  38. class AppBinding extends Bindings {
  39. @override
  40. void dependencies() {
  41. lazyPut(() => getIt.get<MainController>());
  42. lazyPut(() => getIt.get<MineController>());
  43. lazyPut(() => getIt.get<CharacterController>());
  44. lazyPut(() => getIt.get<LoginController>());
  45. lazyPut(() => getIt.get<KeyBoardController>());
  46. lazyPut(() => getIt.get<FeedbackController>());
  47. lazyPut(() => getIt.get<AboutController>());
  48. lazyPut(() => getIt.get<BrowserController>());
  49. lazyPut(() => getIt.get<CharacterGroupContentController>());
  50. lazyPut(() => getIt.get<KeyboardManageController>());
  51. lazyPut(() => getIt.get<CharacterCustomController>());
  52. lazyPut(() => getIt.get<CharacterCustomDetailController>());
  53. }
  54. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  55. Get.lazyPut(builder, fenix: true);
  56. }
  57. }
  58. final generalPages = [
  59. GetPage(name: RoutePath.mainTab, page: () => MainPage()),
  60. GetPage(name: RoutePath.login, page: () => LoginPage()),
  61. GetPage(name: RoutePath.feedback, page: () => FeedbackPage()),
  62. GetPage(name: RoutePath.about, page: () => AboutPage()),
  63. GetPage(name: RoutePath.browser, page: () => BrowserPage()),
  64. GetPage(name: RoutePath.keyboardManage, page: () => KeyboardManagePage()),
  65. GetPage(name: RoutePath.characterCustom, page: () => CharacterCustomPage()),
  66. GetPage(name: RoutePath.characterCustomDetail, page: () => CharacterCustomDetailPage()),
  67. ];