Как запросить данные из облачного хранилища firebase во флаттере - PullRequest
0 голосов
/ 08 мая 2020

Мне нужна помощь .. Так что делаю вроде как в магазине приложение. Где имя элемента хранится в облачном хранилище, и я хочу, чтобы пользователь мог искать на домашней странице то, что они ищут .. Итак, какой наиболее экономичный и экономичный способ позволить пользователю выполнять поиск по всей базе данных .. Для Например, если слово «Велосипед» является типом, я хочу найти в базе данных все элементы с именем велосипед ..

Но так это экономически эффективно. Я не хочу, чтобы он запускался для отдельных букв до тех пор, пока все слово отправлено .. Таким образом, он не будет запрашивать ..

B .. Затем BI .. Затем BIK.

Только передний велосипед, когда он отправлен .. Пожалуйста, любая помощь ..

1 Ответ

1 голос
/ 08 мая 2020

Создайте TextEditingController, например:

TextEditingController _controller;

Затем назначьте текстовое поле с вашим контроллером:

TextField(controller: _controller);

Теперь, в методе кнопки onPressed, получите текст пользователя :

FlatButton(child: Text('Search!'), onPressed: (){String textResult = _controller.text})

Затем, если вы хотите настроить запрос, просто используйте:

Firestore.instance.collection('Vehicles').where('name', whereIn: _controller.text).snapshots();

Пример жестко закодированных данных:

Firestore.instance.collection('Vehicles').where('name', whereIn: 'Bike').snapshots();

Снимки () функция вернет все данные, относящиеся к этому поиску.

Вы можете использовать StreamBuilder для получения данных.

...