我有以下型号
class ModelCompanies {
int id;
String companyid;
String companyName;
String name;
String activeStatus;
ModelCompanies(
{this.id, this.companyid, this.companyName, this.name, this.activeStatus});
ModelCompanies.fromJson(Map<String, dynamic> json) {
id = json['id'];
companyid = json['companyid'];
companyName = json['companyName'];
name = json['name'];
activeStatus = json['activeStatus'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['companyid'] = this.companyid;
data['companyName'] = this.companyName;
data['name'] = this.name;
data['activeStatus'] = this.activeStatus;
return data;
}
}
我有下面的方法
Future<ModelCompanies> fetchCompanies() async {
//encode Map to JSON
final response = await _dio.get(
globals.apiUrl + "get-companies",
options: buildCacheOptions(Duration(hours: _cachePriorityDurationHours),
forceRefresh: true,
maxStale: Duration(days: _networkPriorityDurationDays)));
if (response.statusCode == 200) {
return ModelCompanies.fromJson(response.data);
} else {
throw new Exception("Failed to load post.");
}
}
API中的JSON格式。
[
{
"id":123,
"companyid":"XYZ-123",
"companyName":"XYZ Corporation",
"name":"(XYZ) XYZ Corporation",
"activeStatus":"A"
},
{
"id":248,
"companyid":"PQR-248",
"companyName":"PQR Holdings Limited",
"name":"(PQR) PQR Holdings Limited",
"activeStatus":"A"
},
{
"id":397,
"companyid":"MNO-397",
"companyName":"MNO Adventures",
"name":"(MNO) Adventures",
"activeStatus":"A"
}
]
返回模型公司时出现问题。fromJson(response.data)
fetchcompanys中的code>给出错误列表
我在SO中寻找类似问题的其他解决方案,但无法使它们工作(因为我对颤动和飞镖相当陌生)。
我试过的是
Map<String, dynamic> jsonResponse = response.data.map((item) {
return {
"id": item["id"],
"companyid": item["companyid"],
"companyName": item["companyName"],
"name": item["name"],
"activeStatus": item["activeStatus"]
};
}).toList();
return ModelCompanies.fromJson(jsonResponse );
但这也犯了同样的错误。
响应。数据
包含一个JSON
字符串
,其中包含对象的列表
,因此我们应该替换以下行:
if (response.statusCode == 200) {
return ModelCompanies.fromJson(response.data);
}
到:
if (response.statusCode == 200) {
List<ModelCompanies> modelCompanies =
List<ModelCompanies>.from(
response.data.map((model)=> ModelCompanies.fromJson(model)
)
);
}
如果有人知道如何修复这个错误,我会非常感激!我只是想使用API访问网站,saleTitle和saleCode然后显示它。所有的代码都在下面,希望这只是一个我忽略的简单修复 任何想要查看数据结构的人都可以使用API 或者这里的Json数据 模型 屏幕文件
我是颤振开发方面的新手。我犯了一个错误 列表不是“Iterable”类型的子类型 到目前为止,我已经做到了。 模范班 缅因州班内 } 我试图从2天开始解决这个问题。 请帮忙,谢谢。 这里是JSON响应,您可以检查链接
我的JSON有点像这样: 我的模型类: 这是我的api调用: 如何获取图像。小班?如果我需要澄清我的问题,请告诉我。我得到的错误列表不是Map类型的子类型
我目前正在构建一个应用程序,通过医疗api读取数据,我试图解析JSON。 我为用户创建了一个模型类: 这是我试图阅读的JSON信息: 但是我得到的错误列表不是Map类型的子类型 如何修复此错误?
我正在尝试使用StreamProvider使firestore文档流中的数据在我的应用程序中可用。这是一个食谱应用程序,这是购物清单。 我有一个模型RecipeItem,其中包含关于食谱中项目的详细信息。这个文件保存一个数组,称为列表,包含列表中每个项目的映射。 下面是我与firestore的连接并设置流。我尝试获取文档,然后使用用户映射为列表中的每个项目创建RecipeItem实例。方法如下:
我有一个FutureBuilder(很高兴加载)从Firebase获取我的DocumentSnapshot列表,但问题是如果我推送/弹出屏幕,它会一遍又一遍地重建它。为了解决这个问题,我最终将它放在了上,但我有一个问题,我有时无法从中获取所有文档。 我有一个按钮可以启用国家/地区筛选和禁用,每次按下它几乎都会立即显示我的文档,例如,我总共筛选了11个国家/地区,筛选了5个国家/地区,但有时我不会全