flutter refresh obs list of classes after changing data in it
you can use refresh method like this on your observable, after changing the value:
msgChat.refresh()
if this didn't work, it's probably because you didn't use Obs
correctly
please share the Obs part if the problem remains so i can help
Brightcode
Updated on January 01, 2023Comments
-
Brightcode over 1 year
I created a list and made it observable by using using getx obs
var msgChat = List.filled(1, UserMessagesModel(), growable: true).obs;
and if i append or add a new to it, it automatically updates in the UI but my problem is that if i using a single value inside the classes of the list it doesn't get updated until i do it for the second time before it updates
socket.on("msg_delivered", (del) { OfflineDatabaseManager.instance.updateMsgReadData(del).then((value) { uController.msgChat.forEach((el) { if (el.msgId == del) { print(el.msgId); el.isRead = 'true'; } }); }); });
my listview is wrap using an Obx widget which makes it work but it doesn't updated if a single value in the class of the list is changed please is there a way to like refresh the list or listview and also i can't use
setState(() {});
because an not inside aStatefulbuilder
but in a class which extends to getxclass SocketHandler extends GetxController {}
please how do i fix this issue. Thank. Also if you require more explanation then tell me to explain
-
CNK almost 2 yearsThanks so much. I didn't know the .refresh() method for the Rx Obs in Get.