flutter 获取何时使用 GetX<Controller>、GetBuilder<Controller> 或 Obx()

时间:2021-04-16 08:42:56

标签: flutter flutter-get

正如标题所说,有几种方法可以更新状态。我什么时候应该选择一个?

1 个答案:

答案 0 :(得分:3)

对此没有硬性规定,但我尝试决定:

对象

  • 当我的控制器已经在其他地方注册并且我想要
  • 最少的代码/噪音
  • 反应式小部件

GetX

  • 当我的控制器尚未注册或
  • 我想非常明确/清楚地说明正在使用哪个控制器或
  • 我需要在创建过程中运行一些 initState 调用并且我想要
  • 反应式小部件

GetBuilder

  • 我想手动决定小部件何时重建
  • 我有几个状态变量可以作为一个组一起刷新

注意事项

在幕后,Obx 和 GetX 都使用流,订阅控制器可观察变量更改流以了解何时响应式重建。

GetBuilder 没有。

GetX 和 GetBuilder 都扩展了 StatefulWidget