GetxController 结构体
Posted
技术标签:
【中文标题】GetxController 结构体【英文标题】:GetxController structure 【发布时间】:2021-10-21 11:43:42 【问题描述】:class Controller extends GetxController
int currentIdx = ''.obs;
void updateInt(int idx)
currentIdx = idx.obs;
这是我的控制器。现在我把这条线作为一个小部件来获取 idx 值并立即分配给 currentIdx 值:
Controller().updateInt(idx);
但 .obs 行在当前结构中会出错。
当我更换控制器时:
class Controller extends GetxController
RxInt currentIdx = 0.obs;
void updateInt(RxInt idx)
currentIdx = idx;
这次是 Controller().updateInt(idx);给出错误。 (RxInt 不兼容 int 值)
我该如何处理?
【问题讨论】:
【参考方案1】:你需要这样声明和使用:
RxInt currentIdx = 0.obs;
void updateInt(int id)
currentIdx.value = id;
【讨论】:
Obx(() => Text(Controller().currentIdx.toString())),
总是给出 0 结果。
如果您使用Controller()
,请始终创建一个新实例。首先声明Controller controller = new Controller()
,然后将值设置为controller.currentIdx
。在小部件中,您必须调用 controller.currentIdx.value.toString()
以上是关于GetxController 结构体的主要内容,如果未能解决你的问题,请参考以下文章