【发布时间】:2021-02-20 02:41:01
【问题描述】:
我试图从 API 调用中取回数据列表并将此数据列表发送到我为它创建的本地 sqlite 数据库。我遇到了数据类型为 的问题,我不确定如何将其转换为可用的东西。我只是想将 api 调用中的数据分配给一个变量,这样我就可以简单地将它发送到 sqlite 数据库。欢迎任何建议!谢谢!
这是我试图从 API 调用中获取数据并将其发送到 sqlite 数据库的代码。
if(user.success) {
Quarter quarters;
quarters = await getQuarters();
QuarterDBProvider.quarterDB.newQuarter(quarters);
}
这是执行 API 调用的地方
Map data;
List<Quarter> quarterFromJson(String str) =>
List<Quarter>.from(json.decode(str).map((x) => Quarter.fromJson(x)));
Future<List<Quarter>> getQuarters() async {
final http.Response response = await http.get(
'https://myfakeapi/quarters',
);
if (response.statusCode < 400) {
return quarterFromJson(response.body);
} else {
throw Exception('Failed to get quarters');
}
}
【问题讨论】:
-
调用API调用函数后。然后使用
forEach()并将每个元素添加到 SQLllite DB。在您的情况下,它将是quaters.foreach((index)=> QuarterDBProvider.quarterDB.newQuarter(quarters[index])); -
尝试在
.map()之后添加.toList()
标签: flutter flutter-dependencies