GetX: Atualização por meio de IDs

GetX: Atualização por meio de IDs

Em GetX é possível realizar a mudança de um estado por meio de uma ID, basta que em seu GetBuilder você adicione um id:

GetBuilder(
  init: Controller(),
  id: "coloqueAquiSeuID",
  build (_) {}
)

E para que você possa atualizar somente este ID, utilizar o update() em seu controller. Lembrando que o método update exige uma lista de ids, então você pode especificar quais ids devem ser alterados.

class GlobalController extends GetxController {
  update(["coloqueAquiSeuID"]);
}

Caso queira colocar uma condição para que seja atualizado o estado do widget referente ao seu ID, basta colocá-la após o seu ID, por exemplo, quero atualizar o IDtal, se o _counter == 3:

class GlobalController extends GetxController {
  update("IDtal", _counter == 10);
}

Pode-se colocar vários GetBuilder dentro um do outro:

GetBuilder(
  init: Controller(),
  id: "coloqueAquiSeuID",
  build (_) {
    return GetBuilder(
      id: "IDtal",
      build (_) {
        return Text(_.meuEstado);
      }
    );
  }
)

Só é necessário inicializar o Controller no primeiro GetBuilder, nos demais que use o mesmo controlador, basta tipá-lo com este controlador.