#firebase #flutter #dart #google-cloud-firestore
# #firebase #flutter #dart #google-облако-firestore
Вопрос:
Я пытаюсь извлечь некоторые данные из FireStore и сохранить их в локальном списке, который будет отображаться позже в виде карточек. Я видел много руководств, в которых люди использовали .once()
для извлечения данных.
Теперь, когда я пытаюсь сделать то же самое, появляется ошибка, например, слово не распознано.
@override
void initState() {
super.initState();
CollectionReference dbRefItem = FirebaseFirestore.instance.collection("items");
***dbRefItem.once().then***
}
Кажется, я не могу найти какую-либо документацию, если она устарела или я делаю что-то не так! Наведение курсора на ошибку говорит
«Метод ‘once’ не определен для типа’CollectionReference’. Попробуйте исправить имя на имя существующего метода или определить метод с именем «once». «
Комментарии:
1. что говорит линтер. Попробуйте навести курсор на волнистые линии и вставить журнал сюда.
2. @uni: метод ‘once’ не определен для типа ‘CollectionReference’. Попробуйте исправить имя на имя существующего метода или определить метод с именем ‘once’.
3. Добавили ли вы ядро Firebase и пакет firestore в pubspec.yaml? Кроме того, проверьте, импортировали ли вы пакет firestore над этим файлом dart
4. Да, он импортирован и в yaml. Согласно новой документации, основной импорт не требуется, поскольку это подмножество другого пакета хранения FireStore, но я все равно импортировал все.
5. Не уверен, почему эта проблема все еще появляется, попробуйте перезапустить android studio и удалить .then(), и если это все еще не удается, запустите восстановление кэша flutter pub в командной строке
Ответ №1:
.get()
.once()
однако, .once()
синтаксис не принимается последним SDK Flutter во время работы с предыдущим. Подняли заявку на форуме разработчиков Flutter.