【发布时间】:2020-10-05 10:40:42
【问题描述】:
我有一个带有一个简单方法的类,它有一个 firestore 调用,我认为它是异步的。 问题是当我调用这个方法时,它返回undefined,我不知道如何实现一个回调函数来返回我需要的数组。
我班的代码是:
class Alumnes {
llista(ordre) {
db.collection('alumnes')
.orderBy('cognoms', ordre)
.get()
.then(function (doc) {
var llistaAlumnes = [];
doc.forEach((doc) => {
llistaAlumnes.push(doc.data().nom + ' ' + doc.data().cognoms);
});
return llistaAlumnes;
})
.catch(function (err) {
console.log(err);
});
}
我用这个代码来调用它:
var alumnes = new Alumnes();
var llistaAlumnes = alumnes.llista('asc');
console.log(' llistaAlumnes', llistaAlumnes);
但它返回 undefined 因为 firestore 使用异步函数。 firestore 结束通话后如何设置 llistaAlumnes?
【问题讨论】:
标签: javascript class asynchronous google-cloud-firestore