如何解决尝试初始化 Hive 时出现奇怪的错误
错误:Unhandled Exception: HiveError: You need to initialize Hive or provide a path to store the Box.
基本上我的依赖中有这些,所以一切都应该很好。
hive: ^1.4.4+1
hive_Flutter: ^0.3.1
path_provider: ^1.6.27
我也有import 'package:hive/hive.dart';
和
import 'package:path_provider/path_provider.dart';
在文件中
所以我只有
void doSomething() async {
final documentDirectory = await getApplicationDocumentsDirectory();
Hive.init(documentDirectory.path);
}
打电话。
我不明白。我想我做的一切都是正确的。如果您需要其他东西,请告诉我。
解决方法
打开终端写入 扑扑酒吧得到 然后它会同步并工作
,目前path_provider不支持WEB。您可以在此处查看:path_provider。
您必须为 WEB 使用另一个目录。如果您使用 BLOC 作为状态管理,您可以执行以下操作:
if (!kIsWeb) {
// if android or tablet
HydratedBloc.storage = await HydratedStorage.build(
storageDirectory: await getApplicationDocumentsDirectory(),);
} else {
// if web
HydratedBloc.storage = await HydratedStorage.build(
storageDirectory: HydratedStorage.webStorageDirectory,);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。