Мне нужно знать, были ли данные добавлены в облачное хранилище Firestore (Flutter)

#flutter #google-cloud-firestore

#flutter #google-cloud-firestore

Вопрос:

У меня есть эта операция

 EventModel data = EventModel(_nameEvent, _passEvent, _localEvent, _dateEventString);
HashMap<String, String> mapData = data.getEventMap();
Firestore.instance.collection("app").document("database_v1").collection("events").document().setData(mapData);
  

Мне нужно показать предупреждение, были ли данные введены успешно или нет

 _scaffoldKey.currentState.showSnackBar(
                              SnackBar(
                                  content: Text(message),
                                  duration: const Duration(seconds: 6)
                              )
                          );
  

Я пытался использовать .whenComplete () и then (doc), но ни один из них не возвращает, если это было успешно.

Ответ №1:

setData Метод возвращает Future<void> , который завершается, когда документ был передан на сервер. Это означает, что вы можете просто await setData вызвать:

 await Firestore.instance
               .collection("app").document("database_v1")
               .collection("events").document().setData(mapData);