为什么我的函数返回一个空数组?

时间:2019-12-27 22:29:43

标签: javascript

我的功能是从数据库正确获取数据。但是当我尝试返回结果时,由于某种原因它们变成空的。为什么以及如何解决这个问题?

我要在全局范围内声明allHistory,但是当我在函数内声明它时,问题仍然存在。

readReceiver = () => {
  let myHistory = firebase
    .database()
    .ref("/locations")
    .child(this.currentUser.uid)
    .child("receiver")
    .orderByChild("order")
    .limitToLast(1);
  myHistory.on("value", snapshot => {
    snapshot.forEach(thing => {
      oneHistory = [];
      oneHistory.push(
        thing.val().sender,
        thing.val().latitude,
        thing.val().longitude,
        thing.val().created_at
      );
      allHistory.push(oneHistory);
    });
    console.warn("this is NOT EMPTY", allHistory);
  });
  console.warn("this is empty", allHistory);
  return allHistory;
};

0 个答案:

没有答案