Как вы можете проверить, существует ли поле в document / documentSnapshot или нет? - PullRequest
2 голосов
/ 11 февраля 2020

В документах documentSnapshot есть метод publi c, который называется содержит (строка fieldName). https://firebase.google.com/docs/reference/android/com/google/firebase/firestore/DocumentSnapshot#public -method-summary

Но когда я использую этот метод в своем коде, я всегда получаю код ошибки, например TypeError: documentSnapshot.contains не является функцией

Я правильно понял? Есть ли обходной путь для этого?

Вот пример того, что я пытаюсь сделать.

let citiesRef = db.collection('cities');
let allCities = citiesRef.get()
  .then(snapshot => {
    snapshot.forEach(doc => {
      if(doc.contains('states'){
      console.log(doc.id, '=>', doc.data());
     };
    });
  })
  .catch(err => {
    console.log('Error getting documents', err);
  });

1 Ответ

2 голосов
/ 11 февраля 2020

Вы используете Javascript, и ссылка, которую вы указали, относится к Android. В Javascript вы можете использовать метод get():

   snapshot.forEach(doc => {
      if(doc.get('states') != null){
      console.log(doc.id, '=>', doc.data());
     };
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...