【问题标题】:Iterate through a Future Map in Flutter在 Flutter 中迭代未来地图
【发布时间】:2021-08-12 22:59:32
【问题描述】:

如何遍历从 Flutter 中的 Future 函数返回的映射? forEach 不适用于 Future Maps。

本质上,有什么方法可以将 Future Map 转换为普通的 Map 对象?

【问题讨论】:

  • 您好。你应该详细说明你的用例。你从哪里得到未来?你想把它转换成什么?发布示例代码。
  • 我正在使用一个 API,因此结果是一个未来地图。我想遍历地图并在屏幕上显示各个键和值。

标签: android flutter dart


【解决方案1】:

Future<Map> 对象可以通过等待它们转换为Map 对象。

例如:

final Future<Map<String, dynamic>> mapFuture = mapApi.get();
final Map<String, dynamic> exampleMap = await mapFuture;

所有这些都应该是 async 函数的一部分。

异步函数示例:

Future<void> asyncFunction() async {}

当您在等待后获得Map 对象时,您可以在该Map 上调用forEach 函数。

这可能会有所帮助:https://dart.dev/codelabs/async-await

【讨论】:

  • 我想在返回列表视图小部件的小部件列表的函数内进行转换。因此,如果我使该函数异步,它将返回一个未来列表,因此会有问题。还有其他方法吗?感谢您的回答!
  • 您可以使用FutureBuilder 小部件。它有助于等待您的 UI 所依赖的未来。你可以在这里找到更多信息:api.flutter.dev/flutter/widgets/FutureBuilder-class.html
猜你喜欢
  • 2020-11-06
  • 2019-06-02
  • 2020-12-05
  • 1970-01-01
  • 1970-01-01
  • 2011-12-08
  • 2020-08-11
  • 2017-11-08
  • 1970-01-01
相关资源
最近更新 更多