Получайте обновления в реальном времени с Cloud Firestore на всю коллекцию - PullRequest
0 голосов
/ 20 января 2019

Я пытался следовать этому SO , но я все еще не могу записать данные.

Вопрос: Как развернуть данные всех документов коллекции?

Фрагмент:

return await db.collection("articles")
    .onSnapshot((docs) => {
      console.log("Docs data: ", docs.map(doc => doc.data()); // wont work
    });

1 Ответ

0 голосов
/ 20 января 2019

Когда вы слушаете всю коллекцию, вы получаете QuerySnapshot. Вам нужно зациклить это, чтобы получить отдельные документы:

return await db.collection("articles")
    .onSnapshot((querySnapshot) => {
      querySnapshot.forEach((doc) => {
        console.log("Docs data: ", doc.data());
      })
    });

Обновление Теперь я вижу, что вы обращаетесь к docs, как будто это массив. Массив документа находится в свойстве docs в моментальном снимке запроса, поэтому:

return await db.collection("articles")
    .onSnapshot((querySnapshot) => {
      console.log("Docs data: ", querySnapshot.docs.map(doc => doc.data()); 
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...