Firebase分页

时间:2017-05-25 19:12:44

标签: ios swift firebase firebase-realtime-database

我使用JSQMessageViewController创建聊天应用程序。首先,我获取最后25条消息,然后当用户位于顶部时,我必须获取更多25条消息。我是通过以下方式完成的,但它首先返回25. queryEnding(atValue: self.threadIDs.first!)无效。 self.threadIDs.first包含正确的最后一条消息' threadId。

    let messagesQuery = messageRef.queryEnding(atValue: self.threadIDs.first!).queryLimited(toFirst: 25) // in JSQMessagesLoadEarlierHeaderView

这就是我首先获取数据的方式

func observeMessages () {
            let messagesQuery = messageRef.queryLimited(toLast: 25)
            newMessageRefHandle = messagesQuery.observe(.childAdded, with: { [weak self] (snapshot) -> Void in
                guard let weakSelf = self else { return }
                let key = snapshot.key
                weakSelf.threadIDs.append(key)
    }
}

0 个答案:

没有答案