Поиск делегатов по флаттеру с помощью Firestore - PullRequest
1 голос
/ 28 октября 2019

Я использую функцию поиска с помощью Flutter Search Delegate, и данные хранятся в Firestore. Я не могу понять, почему эта ошибка появляется.

Widget buildSuggestions(BuildContext context) {
  return StreamBuilder(
    stream: Firestore.instance.collection('todos').snapshots(),
    builder: (context, snapshot) {
      if (!snapshot.hasData) return new Text('Loading...');

      final results =
          snapshot.data.documents.where((a) => a['title'].contains(query));

      return ListView(
        children: results.map<Widget>((a) => Text(a['title'])).toList(),
      );
    },
  );
}

Ошибка:

type '(dynamic) => dynamic' is not a subtype of type '(DocumentSnapshot) => bool' of 'test'

1 Ответ

1 голос
/ 28 октября 2019

Заменить строку

final results = snapshot.data.documents.where((a) => a['title'].contains(query));

на

final results = snapshot.data.documents.where((DocumentSnapshot a) => a.data['title'].contains(query));

И строку

children: results.map<Widget>((a) => Text(a['title'])).toList()

на

children: results.map<Widget>((a) => Text(a.data['title'])).toList()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...