【问题标题】:ObjectIDQuery.findObjectsInBackgroundWithBlock causing Xcode source editor to have limited functionalityObjectIDQuery.findObjectsInBackgroundWithBlock 导致 Xcode 源代码编辑器功能有限
【发布时间】:2015-09-24 15:07:42
【问题描述】:

我正在尝试从 Parse 查询以获取数组中的对象 ID,而不必对 ID 进行硬编码。我尝试使用以下代码:

var ObjectIDQuery = PFQuery(className: "QuestionsandAnswers")
 ObjectIDQuery.findObjectsInBackgroundWithBlock({
   (objectsArray : [AnyObject]?, error : NSError?) -> Void in

     var ObjectIDs = objectsArray as! [PFObject]

     for i in 0..<ObjectIDs.count{
       self.ObjectIDsPublicArray.append(ObjectIDs[i].objectId)

       }

     })             

但代码导致 Xcode 声明“Xcode 遇到问题。源代码编辑器功能受限。正在尝试恢复”

有人知道为什么该代码会导致这种情况吗?还有什么修复建议吗?

【问题讨论】:

  • 除此之外,variableName ObjectIDQuery 是一个很大的禁忌 - 所有变量名称都应以小写开头

标签: swift parse-platform xcode7


【解决方案1】:

您走在正确的道路上,但 Parse 在他们的新 SDK 中不再使用 [AnyObject]?,因此请更改为 [PFObject]?

例子:

 let objectIdQuery = PFQuery(className: "QuestionsandAnswers")
 objectIdQuery.findObjectsInBackgroundWithBlock({
    (objectsArray : [PFObject]?, error : NSError?) -> Void in
            if error == nil
           {
               if let objects = objectsArray
               {
                   for one in objects
                  {
                         let objectID = one.objectID      //<--- objectID
                     // then append the objectID into your data structure
                  }
               } 
            }
       }) 

【讨论】:

  • 我用我正在考虑使用的完整块更新代码。您添加这些 cmets 的位置是我放置“append.(ObjectIDs[i].objectId)”的位置?
  • 是的,先生,如果您使用我的代码,只需将 objectID 附加到您的数组中
  • let objectIdQuery = PFQuery(className: "QuestionsandAnswers") objectIdQuery.findObjectsInBackgroundWithBlock({ (objectsArray : [PFObject]?, error : NSError?) -> Void in if error == nil { if let objects = objectsArray { for one in objects { let objectID = one.objectID.append(ObjectIDs.objectId) //
  • 但收到“'PFObject'的值类型没有成员'objectID'”的错误
  • 你不能这样做 one.objectID.append 它不是一个数据结构
【解决方案2】:

这是一个常见的问题,基本上解析更新了他们的SDK

改变一下

[AnyObject]? to [PFObject]?

同样的问题here我想 PFArrayResultBlock(parse) is causing an error while converting to swift 2.0

【讨论】:

    猜你喜欢
    • 2016-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 2016-10-01
    • 1970-01-01
    相关资源
    最近更新 更多