Должен ли я использовать .then при использовании async / await в firebase - PullRequest
0 голосов
/ 01 мая 2020

Как и в заголовке, нужно ли использовать .then внутри функции async / await. Какой эффективный путь между двумя

setPersonList = async ()=> {
  const personList = [];
  await this.firestoreCollection
  .get()
  .then(result => {
    personList  = { ...result.data };
  });
  return personList ;
};

или

setPersonList = async () => {
  const personList = [];
  const snapshot = await this.firestoreCollection
  .get()
  snapshot.docs.forEach((doc) => {
      personList .push(doc.data());
  });

  return personList ;
};

1 Ответ

1 голос
/ 01 мая 2020

В общем случае не стоит объединять цепочки async / await и then / catch для одного и того же обещания. Весь смысл async / await состоит в том, чтобы обеспечить более читаемый код, который не включает в себя обратные вызовы вложений с помощью then / catch.

Ваш второй вариант гораздо более идиоматический c JavaScript.

...