【发布时间】:2019-08-16 15:44:42
【问题描述】:
My 函数 types() 应该返回一个唯一的 ExpansionTiles 列表。 在飞镖中,结合 .toSet().toList() 在删除 List 中的重复项方面非常有效,我在这里尝试做同样的事情,但我仍在渲染重复项。
在图片中我不希望 NISSAN 出现两次,只作为一个类别出现一次。
types() {
return snapshot.data.documents.map((doc) {
if(doc['car']['registryNumber'] != null && doc['car']['category'] ==
'car') {
return ExpansionTile(
title: new Row(
children: <Widget>[
new Text(
doc['car']['type'].split(' ')[0],
style: new TextStyle(
fontSize: 15.0
),
)
],
),
children: <Widget>[
],
);
} else {
return new Text('');
}
}).toSet().toList();
}
【问题讨论】:
-
你在 ExpansionTiles 列表中执行 toSet() 但你应该在汽车名称列表中执行此操作
-
知道了!在将 Widget 返回之前,我将 toSet() 应用于汽车名称列表。现在一切都好!