Firestore - Как получить идентификатор документа из FirebaseFirestore.QuerySnapshot? - PullRequest
0 голосов
/ 22 марта 2019

Я запрашиваю коллекцию для конкретного документа и пытаюсь получить идентификатор документа из результата моего запроса типа FirebaseFirestore.QuerySnapshot.

Мой фактический запрос выглядит так (я использую async / await):

result = await db.collection("chatrooms").where("userA", "==", req.body.userA)
            .where("userB", "==", req.body.userB).limit(1).get();

Я пытался с:

await result.docs.map(doc => {
            return doc.id
        })

Но это дает мне undefined назад.

Что я делаю не так?

1 Ответ

2 голосов
/ 22 марта 2019

QuerySnapshot содержит ноль или более объектов DocumentSnapshot, представляющих результаты запроса.К документам можно обращаться как к массиву через свойство docs или перечислять с помощью метода forEach.Количество документов может быть определено с помощью свойств empty и size.

Таким образом, будет возвращен массив (QuerySnapshot) QueryDocumentSnapshot s.Вам нужно зациклить снимки, используя forEach () , тогда вы можете получить идентификатор документа от каждого QueryDocumentSnapshot

https://firebase.google.com/docs/reference/js/firebase.firestore.QueryDocumentSnapshot

Если вы используете машинопись, вы должны увидеть определения, методы и свойства в вашей IDE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...