Firebase:重温朋友的数据(Ionic Framework)

时间:2017-09-15 23:22:56

标签: firebase ionic-framework firebase-realtime-database

我有一个应用,我需要获取用户的朋友地理位置数据。我需要做的是:

1)将当前用户的节点循环到" friends"节点以获取所有用户的朋友

2)使用该数据,go loop" users / [[friend uid]]"对于每个朋友,从地理位置拉出lat和long以及朋友的显示名称

这应该是订阅事件,如果服务器中的地理位置更新,它也应该在应用程序中显示它/更新变量。

朋友节点结构如下:

friends
    current user UID
        random id (not needed)
           friend 1 UID (needed)
        random id (not needed)
           friend 2 UID (needed)
        etc

这里也是整个数据库结构的图片:

database

谢谢!

编辑:这是检索朋友的当前代码,我如何实现让每个朋友的地理位置重新获得?

friendsNode = firebase.database().ref('/friends');
....
getFriendsList() {
  let friendsUID = [];
  this.friendsNode.child(firebase.auth().currentUser.uid).on('value', (snapshot) => {
    let allFriends = snapshot.val();
    this.myFriends = [];
    for (var i in allFriends)
      friendsUID.push(allFriends[i].uid);

    this.userService.getallusers().then((users) => {
      this.myFriends = [];
      for (var j in friendsUID)
        for (var key in users) {
          if (friendsUID[j] === users[key].uid) {
            this.myFriends.push(users[key]);
          }
        }
      this.events.publish('friends');
    }).catch((err) => {
      alert(err);
    })

  })
}

0 个答案:

没有答案