// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'dbmodel.dart';
// **************************************************************************
// TypeAdapterGenerator
// **************************************************************************
class CacheAdapter extends TypeAdapter<Cache> {
@override
final typeId = 4;
@override
Cache read(BinaryReader reader) {
var numOfFields = reader.readByte();
var fields = <int, dynamic>{
for (var i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
};
return Cache(
isDarkMode: fields[0] as bool,
);
}
@override
void write(BinaryWriter writer, Cache obj) {
writer
..writeByte(1)
..writeByte(0)
..write(obj.isDarkMode);
}
}
Hive 生成文件的 for 循环中存在错误,提示“control-flow-collections”实验未启用。
for (var i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
有人可以帮我吗?
最佳答案
我找到了一个解决方案,在你的flutter应用程序的根文件夹中运行以下命令(不是flutter SDK):
flutter analyze
并且你会看到多个警告,说没有为“control-flow-collections”定义实验,问题是你的Flutter App文件夹的pubspec.yaml中定义的SDK包含
environment:
sdk: ">=2.1.0 <3.0.0"
2.3.0版本之前不支持实验,必须将版本更改为:
environment:
sdk: ">=2.3.0 <3.0.0"
然后运行:
flutter pub get
在 flutter 应用程序的根目录中并重新运行“flutteranalyze”,问题就会消失。
关于android - Hive 生成的文件错误 - "control-flow-collections"实验未启用 - Flutter/Dart,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59763204/