问题标签 [flutter-hive]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flutter - Flutter Hive - 管理已保存数据的最佳方式
我需要一些关于 Flutter Hive 的指导。我正在为一直需要缓存数据的推销员制作应用程序,因为他可能会去没有互联网连接的地方。起初我使用 sqflite,但后来我发现了 Hive,它比 sqflite 快得多。所以我试一试。
问题/问题
- 如何清除/删除特定框或所有框以再次创建它们?
await Hive.deleteBoxFromDisk
- 工作得非常好。有一次我得到了两次或更多次。我需要那个,因为我试图提供一个按钮来手动同步所有数据。我还需要在后台自动同步。我不知道哪个元素发生了更改、删除或添加,因此最简单的方法是删除整个框并使用新数据再次创建它。
- 元素定制
这Customer
是一张带有 4Text
个小部件的卡片。每个小部件可能包含基于用户配置的不同信息:
你可以选择一个项目,改变它的“价值”。当我保存它时,一切正常,但是当返回时,更改一项并再次保存它给了我:
HiveError (HiveError: The same instance of an HiveObject cannot be stored in two different boxes.)
我这样做是这样的:
概括
我认为,所有这些问题可能都是基于我对库的缺乏经验,删除盒子并再次创建它们不是一个好主意。我很久以前就尝试过 Flutter,这个项目是旧的第一次尝试的升级。
下一步将是使用 Hive 具有自动保存功能的文档,我已经害怕它了......
#颤振医生
flutter - Flutter 中如何使用 Hive 存储数据
我正在学习颤振,我想制作一个简单的待办事项应用程序。
在应用程序中,您可以创建不同的“列表”(例如“家庭作业”、“杂货”......),每个列表都包含任务列表,所以我必须上课:
- 任务(存储单个任务)
- 字符串任务
- 布尔完成
- TaskList(存储一个列表,由任务组成)
- 字符串列表名
- 列出任务(由Tasks组成)
我在测试时使用了一个由 TaskLists 和一些数据组成的 List,但现在我想将数据存储到设备中,我遇到了 Hive,它基于“盒子”的想法,但我不是确定我应该如何处理这个问题。
我应该为每个新列表创建一个新框(然后在用户删除列表时将其删除)还是以某种方式将所有数据存储在一个框中?
flutter - 出现错误:框' 不能分配给参数类型 'ValueListenable'
我是新来的,我正在使用 Hive 作为我的数据库。我正在尝试使用ValueListenableBuilder
小部件来收听新的数据库更新。但我收到以下错误。
The argument type 'Box<dynamic>' can't be assigned to the parameter type 'ValueListenable<dynamic>'.
但是我在list_session
Widget 上使用了相同的代码,但我没有遇到任何错误。但是,对于第二个小部件,我遇到了这个错误。我正在粘贴代码以供参考。
请在下面找到我的代码。
flutter - 使用 Hive.box("user") 会引发错误框“user”已经打开并且类型为 Box
我知道以前有人问过这个问题,但解决方案对我没有帮助。根据蜂巢文档,Hive.box('myBox');
当我在我的代码中尝试这个时,可以像这样调用一个打开的框我得到错误
任何人都知道为什么会发生这种情况。
database - 在颤振中从蜂巢中检索数据时出错:列表' 不是类型 'List 的子类型'
我正在尝试在配置单元数据库中缓存 API 数据。我已经从 api 获取数据,然后尝试保存在数据库中。它已成功保存,但在获取数据时出现错误。我猜它没有阅读子列表。这是数据类的代码
从 db 获取数据的代码:
flutter - 有没有办法通过在 hive db flutter 中加入两个框来获取数据?
我正在寻找可以帮助我从两个不同的盒子中获取数据并加入它们的东西,就像我们在传统数据库中所做的那样。
例如,我有两个不同的盒子,即:
Hive.box<Student>, Hive.box<Results>
现在我想从这两个盒子中获取数据并将它们保存到 Hive.box。这是一种可行的方法还是有其他方法可以做到这一点?
flutter - Flutter中带有whereIn条件的过滤器列表?
此代码示例工作正常。
我正在尝试使用 whereIn 条件过滤列表,但它必须像过滤
我怎样才能做到这一点?
android - Flutter Hive db:如何在检查框中是否已经存在该对象之前从 API 响应中将对象添加到 Hive 框中?
我有一个蜂巢盒,其中包含最初从 API 响应中获得的数据。
为此,clientDataBox
我想从同一个 API 响应中添加更多对象,现在包含新数据(对象列表)。
所以我用这个for循环来添加data
(新的API响应)
我的问题是因为新响应包含已经在蜂巢框(clientDataBox
)中的数据,它保存了重复的对象。
我想检查 hive db 中是否存在特定对象,并且仅当它不在 hive db 中时,才添加到 hive db。
我用过这些方法。但它们不起作用。
或者
或者
flutter - 在assets文件夹中创建Hive db
我正在使用带有颤振的 Hive db。我必须使用api并创建一个一次性数据库并将该数据库放在资产文件夹中,该数据库将成为构建的一部分。
在上面的代码中directory.path
返回路径,如/data/data/com.pkg_name/app_flutter
. 如何在资产文件夹中创建这个数据库,或者有没有其他方法可以创建一次性数据库?