检索集合后从Firestore中获取数据

时间:2019-03-25 21:43:55

标签: reactjs firebase react-native google-cloud-firestore

我的一个收藏夹中有一个字段可供参考。我想接收数据,例如

 var eventsRef = firebase.firestore().collection('events').get()
      .then(querySnapshot => {
        querySnapshot.docs.forEach(doc => {
          var {stringVar1, stringVar2, user} = doc.data()
        }
      })
    })

,然后获取用户(参考)并获取其值。不幸的是,我不知道该如何采取行动。

我试图做诸如user.data()或user.value之类的事情,但我不知道如何实际检索存储在用户应返回的引用中的数据。当前,firebase的响应中,用户只是一个巨大的输出,像这样开始:

文件

entReference {
  "_firestoreClient": FirestoreClient {
    "asyncQueue": AsyncQueue {
      "delayedOperations": Array [],
      "operationInProgress": false,
      "tail": Promise {
        "_40": 0,
        "_55": Promise {
          "_40": 0,
          "_55": undefined,
          "_65": 1,
          "_72": null,
        },
        "_65": 3,
        "_72": null,
      },
    },
    "clientId": "NzKmEZBlNF6FhjgTfoia",
    "credentials": FirebaseCredentialsProvider {

1 个答案:

答案 0 :(得分:1)

在您的代码中,如果文档中的user字段是引用类型字段,则在获取时,它将显示为DocumentReference类型的对象。您将必须使用get()来获取它。 (不会自动跟踪DocumentReference对象,因为这可能导致读取次数超出预期,甚至导致无限循环。)