У меня есть функция, с помощью которой я хочу вернуть заполненный массив со значениями из firestore bd, но мне нужно дождаться foreach, чтобы этот массив был правильно заполнен.
Я пробую некоторые методы с этого веб-сайта, но могу ' Я не понимаю, что я делаю плохо.
Моя функция:
static async assistencia(id) {
console.log('Get Assistència ' + id);
let alumnesId = id;
var assistenciaAlumne = [];
db.collection('alumnes')
.doc(alumnesId)
.collection('assistencia')
.get()
.then((assistencia) => {
const promises = [];
assistencia.forEach((assistenciaDoc) => {
assistenciaAlumne.push([assistenciaDoc.id, assistenciaDoc.data().assistencia]);
promises.push(db.collection('alumnes').doc(alumnesId).collection('assistencia').get());
});
return Promise.all(promises);
})
.then(function () {
return assistenciaAlumne;
})
.catch((error) => {
console.log(error);
});
}
И я вызываю эту функцию с помощью кнопки с таким кодом:
var array = Alumnes.assistencia('0qSzBxVimwRlurLHNzXp');
console.log(' array', array);
Да , Выпускники, это класс.
Основная c проблема в том, что этот массив возвращается на консоль:
array
Promise {<resolved>: undefined}
__proto__: Promise
[[PromiseStatus]]: "resolved"
[[PromiseValue]]: undefined
Что я делаю не так?