从firebase抓取帖子

时间:2019-05-06 09:53:16

标签: ios swift firebase firebase-realtime-database closures

我正试图一一从Firebase中获取帖子。我的意思是,我有一个transformPost闭包,可以从Firebase获取帖子,当我将其传递给它时,可以同时获取多个帖子,而仅获取几篇帖子。我相信这是因为我使用过多的闭包以按ID提取图像和用户,并且还使用调度组来等待所有它们完成特定的发布。

所以,我的问题是如何在传递新帖子之前等待获取帖子关闭。

func loadPods() {
        Database.database().reference().child("Posts").observe(.childAdded) { dataSnapshot in
            if let dict = dataSnapshot.value as? [String: Any] {
                print("start", dataSnapshot.key)

                Post.transformPost(dict: dict, postId: dataSnapshot.key, completion: { (post) in
                    print("finish", dataSnapshot.key)

                    self.posts.append(post)
                    self.tableView.reloadData()
                })
            } 
        }
    }

输出:

start LSkymSniU32bPBKyb7F
start TSyaoSniU57bPBKyb7G
finish LSkymSniU32bPBKyb7F

0 个答案:

没有答案