如何在hive flutter中更新“key”名称而不是更新值

zqdjd7g9  于 2023-02-09  发布在  Flutter
关注(0)|答案(1)|浏览(176)

我想更新flutter配置单元中的“key”。但是它正在更新flutter中的值。

updateItems(int index, String value){
    final listData=Hive.box(CommonKeys.DB_NAME);
    listData.putAt(index,value);
    final keys=listData.keys;
xa9qqrwz

xa9qqrwz1#

我假设您要更改索引处元素的key
答案是你不能直接这样做(工作真的很复杂,如果你真的需要告诉我)。
你不应该这样做,hive是一个key-value对数据库,这意味着它是为使用keyindex读/写value而设计的。所以你不能编辑keyindex,但你可以将value分配给一个新的key
对于您的情况,我建议您改为存储为ListObject

updateItems(int index, String newKey) {
    final listData = Hive.box(CommonKeys.DB_NAME);
    // This list has only 2 elements, key and value;
    final List keyValuePair = listData.getAt(index);
    keyValuePair[0] = newKey;
    listData.putAt(index, keyValuePair);
}

相关问题