【问题标题】:what is flutter Hive equivalent of removeWhere?什么是flutter Hive相当于removeWhere?
【发布时间】:2021-10-01 02:06:39
【问题描述】:

如何在 Flutter Hive 中删除 List 的值??

example list = [
record(
    name: 'john',
    class: 'Coffee',
  ),
record(
    name: 'sarah',
    class: 'Coffee',
  ),
record(
    name: 'rala',
    class: 'Water',
  ),
];

如您所见,我有多个值并想删除所有包含咖啡值的记录 但是 Hive dnt 有这样的功能可以做到这一点

编辑:我正在使用 Box.add 函数使用自动增量键添加值 我正在考虑删除 hiveb 中的所有框并将 var 中的所有更新列表放入 Hive,但我愿意接受其他更有效的方式或建议

感谢阅读本文的人

【问题讨论】:

  • 添加您的蜂巢盒定义以及您在其中的 put() 条目的方式。
  • iam 使用 box.add 方法并自动使用增量键

标签: list flutter dart


【解决方案1】:

Hive 没有removeWhere,你应该使用Dart 方法来做某事

【讨论】:

  • 我从字面上清除了 Box,所以值很清楚,但是当我用新键分配新值时,它 dsnt 接受它,因为重复的对象
  • @TonyHart 您应该通过键或 id 删除,例如使用 get 方法
【解决方案2】:

所以我根据https://github.com/hivedb/hive/issues/738 到达了 Hive 仓库 如果你的需要和我一样,如果有人需要,我也想分享我的代码

List<BudgetCard> listDelete = localBudget.values.toList();
    for (int i = 0; i < listDelete.length; i++) {
      if (listDelete[i].budgetWallet == walletID) {
        localBudget.deleteAt(i);
      }
    }

感谢所有回答我问题的人!

【讨论】:

    猜你喜欢
    • 2019-12-05
    • 1970-01-01
    • 2013-11-21
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 2011-03-22
    • 1970-01-01
    相关资源
    最近更新 更多