【问题标题】:Is there any way to iterate over future<list> in flutter有什么方法可以在颤振中迭代 future<list>
【发布时间】:2020-11-16 04:51:14
【问题描述】:

我想迭代 Future&lt;list&gt;,但如果我尝试使用 for 循环或尝试将其设置为 List,则会出现错误。

有没有其他方法可以遍历列表中的每个元素:

Future<List> getDailyTask(DateTime date) async {
  var params = {'date': date.toIso8601String()};
  Uri uri = Uri.parse('URL');
  final newURI = uri.replace(queryParameters: params);
  http.Response response = await http.get(
    newURI,
    headers: {"Accept": "application/json"},
  );

  List foo = json.decode(response.body);
  return foo;
}

【问题讨论】:

    标签: flutter dart flutter-get


    【解决方案1】:

    您不能直接在 future 上进行迭代,但您可以等待 future 完成然后在 List 上进行迭代。

    您可以使用这些方法中的任何一种,具体取决于您的用例。

    List dailyTaskList = await getDailyTask(DateTime.now());
    // Now you can iterate on this list.
    for (var task in dailyTaskList) {
      // do something
    }
    

    getDailyTask(DateTime.now()).then((dailyTaskList) {
      for (var task in dailyTaskList) {
        // do something
      }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-08
      • 1970-01-01
      相关资源
      最近更新 更多