【发布时间】:2021-05-30 10:25:52
【问题描述】:
我正在使用一个函数来查询 firebase 实时数据库并获取所需的信息。信息存储在一个返回的数组中。
挑战在于该函数甚至在数据库获取记录之前就返回了数组,因此我得到了空结果。因为我需要使用 .on 来获取多条记录,所以我不能在查询中使用 .then。
如何确保在查询完全执行后返回 va_addresses。
const getAddressLabel = (vp_userid) => {
let vo_obj;
let va_addresses = [];
firebase
.database()
.ref("address/" + vp_userid)
.orderByKey()
.on("child_added", function (snapAddress) {
vo_obj = {
label: snapAddress.val().addresslabel,
value: snapAddress.val().addresslabel,
};
va_addresses.push(vo_obj);
});
return va_addresses;
};
【问题讨论】:
标签: reactjs firebase native synchronous