【发布时间】:2021-12-17 08:20:31
【问题描述】:
已尝试从 json 文件中创建对象列表。
我收到此错误:错误:需要一个“Iterable”类型的值,但得到一个“_JsonMap”类型的值
Future <List<Inspection>> FutureInspections() async {
var inspections = <Inspection>[];
final String response = await rootBundle.loadString('assets/sample.json');
var inspectionsJson = json.decode(response);
for (var inspectionJson in inspectionsJson) {
inspections.add(Inspection.fromJson(inspectionJson));
}
return inspections;
}
[更新 03.11.2021 检查类]
class Inspection
{
String _description="";
int _interval=0;
int _state=0;
DateTime _date=new DateTime.now();
Inspection(this._description, this._interval, this._state, this._date);
Inspection.fromJson(Map<String, dynamic>json){
_description=json['description'];
_interval=json['interval'];
_state=json['state'];
_date=json['date'];
}
DateTime get date => _date;
set date(DateTime value) {
_date = value;
}
int get state => _state;
set state(int value) {
_state = value;
}
int get interval => _interval;
set interval(int value) {
_interval = value;
}
String get description => _description;
set description(String value) {
_description = value;
}
}
这部分代码弹出错误:
inspections.add(Inspection.fromJson(inspectionJson));
[更新 03.11.2021 Json-File] Json 文件:
{
"inspections": [
{
"date": "01.01.2021",
"state": "1",
"interval": "7",
"description": "SampleText1"
},
{
"date": "01.01.2021",
"state": "2",
"interval": "3",
"description": "SampleText2"
}
]
}
我不明白为什么。你能帮帮我吗?
【问题讨论】:
-
您能否包括
assets/sample.json的外观以及Inspection类的其余部分?