Flutter 中如何使用 Hive 存储数据

Posted

技术标签:

【中文标题】Flutter 中如何使用 Hive 存储数据【英文标题】:How to use Hive to store data in Flutter 【发布时间】:2021-07-14 17:48:01 【问题描述】:

我正在学习 Flutter,我想制作一个简单的待办事项应用程序。

在应用程序中,您可以创建不同的“列表”(例如“家庭作业”、“杂货”...),每个列表都包含任务列表,所以我必须上课:

    任务(存储单个任务)
字符串任务 布尔完成
    TaskList(存储一个列表,由任务组成)
字符串列表名 列出任务(由任务组成)

我在测试时使用了一个由 TaskLists 和一些数据组成的 List,但现在我想将数据存储到设备中,我遇到了 Hive,它基于“盒子”的想法,但我'不知道我应该如何处理这个问题。

我应该为每个新列表创建一个新框(然后在用户删除列表时将其删除)还是以某种方式将所有数据存储在一个框中?

【问题讨论】:

【参考方案1】:

对我来说,将所有任务放在一个盒子里更有意义。然后,当用户删除一个任务时,您只需在框的相应键处删除该任务即可。

每个盒子都需要在应用启动时进行初始化或“打开”。因此,尝试动态添加框会不必要地使您需要编写的代码复杂化,而没有任何额外的好处。

【讨论】:

以上是关于Flutter 中如何使用 Hive 存储数据的主要内容,如果未能解决你的问题,请参考以下文章

基于 Hive 的 Flutter 文档类型存储

如何在 Flutter/Dart 中使用 Hive 框和索引以简单的方式将数据动态加载到 DataTable?

如何使用 JSON 格式备份和恢复 Flutter Hive 数据?

如何在 Hive Flutter 中获取索引的值?

Flutter & Hive - 如何在 Hive 中保存重新排序的列表

将大量数据插入 Flutter Hive 存储使应用程序崩溃