ios - 解析查询结果未添加(附加)到 iOS Swift 中的本地数组

标签 ios swift parse-platform

谁能告诉我为什么我的 startingPoints 数组仍然是 0 个元素?我知道我在查询期间返回了对象,因为该 print 语句打印出了每个查询结果,但是这些对象似乎没有附加到我的本地数组中。我已经包含了下面的代码片段...

func buildStartSpots() -> Void {
    let queryStartingPoints = PFQuery(className: "CarpoolSpots")
    queryStartingPoints.whereKey("spotCityIndex", equalTo: self.startingCity)
    queryStartingPoints.findObjectsInBackgroundWithBlock{(objects: [PFObject]?, error: NSError?) -> Void in
        if error == nil {
              for object in objects! {
                  print("starting point: \(object)")
                  self.startingPoints.append(object)
              }
        } else {
            // Log details of the failure
            print("Error: \(error!) \(error!.userInfo)")
        }
    }
    print("starting points")
    dump(self.startingPoints)
}

最佳答案

虽然我没有使用 Parse 的经验,但该 block 是异步执行的,并且很可能是非阻塞的,正如 API 调用的方法名称所指示的那样。因此,不能保证数据在您调用 dump 时可用,因为后台线程可能仍在执行其工作。

保证数据可用的唯一位置是您提供给 API 调用的完成 block 。所以你可能需要一些方法来通知其他人的变化,例如发布 NSNotification 或使用来自第三方库(例如 ReactiveCocoa、RxSwift)的事件流构造。

关于ios - 解析查询结果未添加(附加)到 iOS Swift 中的本地数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34732181/

相关文章:

IOS Charts 折线图 View Double 值无法转换为 Int,因为要么是无穷大

ios - Xcode - 在 View Controller 之间传递数据,然后转换为整数

javascript - 解析iOS SDK : Calling Cloud Functions From Xcode

iOS:为什么我不能以编程方式为按钮设置框架?

ios - 手势识别器未触发 iOS

ios - 蒙版效果是旋转照片

ios - 点击 SciChart SCIRolloverModifier

ios - swift : show searchbar when scroll up and hide it when scroll down

javascript - 云代码多次保存然后响应成功

parse-platform - 如何使用数据浏览器创建角色?