【问题标题】:How to make a list with a for in Dart如何在 Dart 中使用 for 制作列表
【发布时间】:2021-08-09 14:08:14
【问题描述】:

这是我的第一个问题,如果格式不正确,我很抱歉。

所以,我有一个名为 book 的对象,其属性为“rating”,它是星数的整数。我的想法是连续显示评级为图标,我想我会用一个扩展运算符和一个 for 来做到这一点。

我不知道这是否可能,因为我没有找到任何关于它的文档,或者语法是否错误,因为它需要标识符和')'See issue。我将不胜感激。

child: Row(
   children: [...(for (var i = 0; i < book.rating; i++) => Icon(Icons.star))],
),

【问题讨论】:

  • 你可以通过向这个包提供 rating 变量来规避这个问题,它只需要整数并渲染适当数量的星星(包括星星的分数)。 pub.dev/packages/flutter_rating_bar

标签: list flutter for-loop dart


【解决方案1】:

您也可以使用List generate进行制作。

Row(
      children: List<Widget>.generate(book.rating, (idx) => Icon(Icons.star)),
    );

【讨论】:

  • 感谢您给我这个替代解决方案!
【解决方案2】:

存在语法错误。从开头删除=&gt;()...

child: Row(
   children: [for (var i = 0; i < book.rating; i++) Icon(Icons.star)],
),

【讨论】:

  • 谢谢!!我不知道在这种情况下你可以跳过 => !而且我也没有想到我不需要扩展运算符,因为 for 已经给了我单独的小部件。这很有帮助! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-02-24
  • 2020-05-14
  • 1970-01-01
  • 1970-01-01
  • 2013-04-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多