首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解析JSQMessagesViewController缓存问题

解析JSQMessagesViewController缓存问题
EN

Stack Overflow用户
提问于 2016-03-04 15:08:48
回答 1查看 74关注 0票数 0

我正在查询'Chat‘类,以便从Parse获取消息。然后使用JSQMessagesViewController显示获取的消息。

所有操作都很好,直到我尝试使用以下方法缓存查询:

代码语言:javascript
复制
    query.cachePolicy = .CacheThenNetwork

问题是结果没有被缓存,query.hasCachedResult总是返回false。

查询如下:

代码语言:javascript
复制
    let query = PFQuery(className: PF_CHAT_CLASS_NAME)
    query.whereKey(PF_CHAT_GROUPID, equalTo: forGroupId)
    query.whereKey(PF_CHAT_DELIVERTIME, lessThan: NSDate())
    query.includeKey(PF_CHAT_USER)
    query.orderByDescending(PF_CHAT_DELIVERTIME)
    query.limit = 50
    query.cachePolicy = .CacheThenNetwork

    if query.hasCachedResult{
        print("yes")
    }
    else{
        print("no")
    }

    query.findObjectsInBackgroundWithBlock(completionBlock)

在这里完成了提取和JSQMessagesViewController比特:

代码语言:javascript
复制
   ParseWrapper.getChatAvailable(forGroupId: groupId){

            (objects, error) -> Void in
            if error == nil {

                self.messages.removeAll()
                self.users.removeAll()

                for object in (objects as [PFObject]!).reverse() {

                    self.addMessage(object)

                }
                if objects!.count > 0 {

                    self.tableViewScrollToBottom(true)


                }
                self.tableView.reloadData()
                self.refreshControl.endRefreshing()


            } 
        }

有人知道这是怎么回事吗?.CacheThenNetwork可以很好地处理其他查询。

EN

回答 1

Stack Overflow用户

发布于 2016-03-04 17:44:41

因此,我发现了这个问题,这是一个带有日期参数的行:

代码语言:javascript
复制
query.whereKey(PF_CHAT_DELIVERTIME, lessThan: NSDate())

更多细节请看这个答案..。https://stackoverflow.com/a/30683459/1250367

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35799345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档