getx getbuilder使用方法

CounterBinding:

class CounterBinding extends Bindings {
@override
void dependencies() {
Get.lazyPut(() => CounterController());
}
}

CounterController:

class CounterController extends GetxController {
int count = 0;
void increase(){
count += 1;
update();
}
}

CounterPage:

class CounterPage extends StatelessWidget {
final controller = Get.find<CounterController>();
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text("Counter"),
),
body: Center(
child: GetBuilder<CounterController>(builder: (logic) {
return Text("${controller.count}", style: const TextStyle(fontSize: 50),);
}),
),
floatingActionButton: FloatingActionButton(
child: const Icon(Icons.add),
onPressed: controller.increase,
),
);
}
}

变量可以是普通的声明方式,也可以转换成反应式变量。

有什么不同呢?简单来说,假如需要使用GetX和Obx,那就需要使用反应式变量。反应式变量在改变时就会通知使用它们的地方,并实时局部刷新。且内部做了优化,若是变量与上一次比相同,那么则不会更新。

posted @   吾爱吃鱼  阅读(140)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
点击右上角即可分享
微信分享提示