您好,我正在使用以下代码进行并行网络调用。
List<dynamic> results = await Future.wait([
apiCall1(),
apiCall2(),
...more api calls
]);
我需要更新每个 api 调用的状态。有没有办法知道哪个 api 调用已成功完成并更新状态。
如果我.then
在个别期货中使用,结果列表包含 null。
void main() async {
Future<int> future1 = Future.delayed(Duration(seconds: 1)).then((value) => 1);
Future<int> future2 = Future.delayed(Duration(seconds: 2)).then((value) => 2);
List<dynamic> results = await Future.wait([
future1.then((value) {
print(value);
}),
future2.then((value) {
print(value);
})
]);
print(results);
}
1
2
[null, null]