- 1.路由
- 2.状态管理; 操作界面
- userFolder 建立子文件夹;
- usePrefix 文件进行(_)下划线处理;
- addBinding 增加bind文件;
- addLifecyle自动添加logic 处onReady()和onClose()方法
register_page_tap1页面跳转代码;
Get.toNamed('/test',arguments: {'id':'155****8890'});
- 路由:
GetPage(
name: AppRoutes.TEST,
page: () => RegisterPageTap2Page(),
binding: RegisterPageTap2Binding()
),
五个文件:
- 新建index.dart 导出头文件以供其他文件使用
library register_page_tap2;
export 'register_page_tap2_binding.dart';
export 'register_page_tap2_logic.dart';
export 'register_page_tap2_state.dart';
export 'register_page_tap2_view.dart';
- register_page_tap2_binding.dart 绑定Logic put 变 Find
import 'package:get/get.dart';
import 'register_page_tap2_logic.dart';
class RegisterPageTap2Binding extends Bindings {
@override
void dependencies() {
Get.lazyPut(() => RegisterPageTap2Logic());
}
}
- register_page_tap2_logic.dart 业务逻辑处理页面
import 'package:get/get.dart';
import 'register_page_tap2_state.dart';
class RegisterPageTap2Logic extends GetxController {
final RegisterPageTap2State state = RegisterPageTap2State();
@override
void onReady() {
// TODO: implement onReady
super.onReady();
state.obj = Get.arguments['id'];
print(state.obj);
}
@override
void onClose() {
// TODO: implement onClose
super.onClose();
}
}
- register_page_tap2_state.dart 定义参数页面
import 'package:get/get.dart';
class RegisterPageTap2State {
RegisterPageTap2State() {
///Initialize variables
}
final _obj = ''.obs;
set obj(value) => _obj.value = value;
get obj => _obj.value;
}
- register_page_tap2_view.dart (UI 展示界面)
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'register_page_tap2_logic.dart';
class RegisterPageTap2Page extends StatelessWidget {
final logic = Get.find<RegisterPageTap2Logic>();
final state = Get.find<RegisterPageTap2Logic>().state;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Obx(() => Text("${state.obj}")),///状态管理
),
body: const Center(
child: Text('HELLO WORD'),
),
);
}
}