我创建了一个进行API调用的方法。如下面的示例所示,它接收并返回数据:
Future<List<SearchResult>> postCall() async {
List<SearchResult> searchResult = [];
....
return searchResult;
}
而且,我已尝试将响应存储到List
中,如下面的代码所示。但是,我遇到了这个错误:
Avalue of type Future<List<SearchResult>> can't be assigned to a variable of type List<sResult>
我正在尝试将响应存储到列表中,因为列表更容易遍历数据。是否有其他方法可以将响应存储在List
中?或如何使用FutureBuilder
遍历嵌套对象?
List<SearchResult> sResult = [];
sResult = serviceOne.postCall();
答案 0 :(得分:1)
我认为应该是这样,因为它是Future
的结果。
sResult = await serviceOne.postCall();
答案 1 :(得分:0)
您正确地等待了API调用,并执行了Failed to load resource: the server responded with a status of 404 (Not Found)
函数postCall
。但是,这也意味着它本身会返回一个async
,如果您想访问结果,还必须等待它。
这意味着您需要确保Future
函数中包含以下代码,以允许使用async
关键字:
await