Я пытаюсь отфильтровать список FutureBuilder следующим образом:
return new FutureBuilder(
future: Firestore.instance
.collection('user')
.getDocuments(),
builder: (BuildContext context, AsyncSnapshot snapshot2) {
if (snapshot2.hasData) {
if (snapshot2.data != null) {
return new Column(
children: <Widget>[
new Expanded(
child: new ListView(
children: snapshot2.data.documents
.map<Widget>((DocumentSnapshot document) {
if(document['first_name'] == 'James') {
return new FindFollowerWidget(
name: document['first_name'] + " " + document['last_name'],
username: document['username'],
);
}
}).toList(),
),
),
],
);
}
}else {
return new CircularProgressIndicator();
}
});
Этот FutureBuilder работает, когда я удаляю оператор if;однако, когда я включаю следующий оператор if, Flutter выдает ошибку:
new ListView(
children: snapshot2.data.documents.map<Widget>((DocumentSnapshot document) {
if(document['first_name'] == 'James') {
return new FindFollowerWidget(
name: document['first_name'] + " " + document['last_name'],
username: document['username'],
);
}
).toList(),
),
Мой вопрос: как я могу вернуть FindFollowerWidget только тогда, когда поле снимка документа имеет определенное значение (в данном случае имябыть "Джеймсом"?
Спасибо!