小编mla*_*o91的帖子

在 FutureBuilder 中使用 GetX 构建列表 - UI 未更新

我正在创建一个待办事项列表(某种)应用程序。我有一个使用 FutureBuilder 的视图,它调用一个函数从 SQLite 数据库中获取文章并显示为卡片。我有一个getx_controller.dart,其中包含可观察的列表:

class Controller extends GetxController {
  // this is the list of items
  var itemsList = <Item>[].obs;
}
Run Code Online (Sandbox Code Playgroud)

我有一个items_controller.dart

  // function to delete an item based on item id
  void deleteItem(id) {
    final databaseHelper = DatabaseHelper();

    // remove item at item.id position
    databaseHelper.deleteItem(tableItems, id);

    print('delete item with id $id');
    this.loadAllItems();
  }
Run Code Online (Sandbox Code Playgroud)

loadAllItems是查询数据库函数

最后,list_builder.dart包含 FutureBuilder

final itemController = Get.put(ItemsController());

@override
  Widget build(BuildContext context) {
    return FutureBuilder<List<Item>>(
        future: itemController.loadAllItems(),
        builder: (context, …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-futurebuilder flutter-getx

2
推荐指数
1
解决办法
2727
查看次数