Parse platform 从Parse.com检索数组
我正在尝试从Back4Apps.com(Parse.com等效)下载一个数组。下面的代码不显示任何错误,但当它到达行“downloadQuery.findObjectsInBackground{(objects,error)in”时,它只是跳过其余代码,直到函数的结尾Parse platform 从Parse.com检索数组,parse-platform,swift3,pfquery,back4app,Parse Platform,Swift3,Pfquery,Back4app,我正在尝试从Back4Apps.com(Parse.com等效)下载一个数组。下面的代码不显示任何错误,但当它到达行“downloadQuery.findObjectsInBackground{(objects,error)in”时,它只是跳过其余代码,直到函数的结尾 我已经测试了“用户名”,它似乎是正确的 我确信类和子类的名称是正确的 解析参数是正确的,我已经有许多其他解析函数在工作 有什么建议吗 var userCommonNameArray = [String]() var userC
- 我已经测试了“用户名”,它似乎是正确的
- 我确信类和子类的名称是正确的
- 解析参数是正确的,我已经有许多其他解析函数在工作
var userCommonNameArray = [String]()
var userCommonNameESArray = [String]()
var userCommonNameFRArray = [String]()
var userCommonNameDEArray = [String]()
var speciesNameArray = [String]()
var userNotesArray = [String]()
func insertFromParse () {
let username = userDefault.value(forKey: "username") as! String
let downloadQuery = PFQuery(className:"ReefLifeApps")
downloadQuery.whereKey("username", equalTo: username)
// This is there Xcode skips from to the end
// tried variations of the below line. Neither worked.
// downloadQuery.findObjectsInBackground {(objects, error) -> Void in
downloadQuery.findObjectsInBackground { (objects, error) in
if error == nil {
// Do something with the found objects
for object in objects! {
self.userCommonNameArray.append(object.object(forKey: "userCommonName") as! String)
self.userCommonNameESArray.append(object.object(forKey: "userCommonNameES") as! String)
self.userCommonNameFRArray.append(object.object(forKey: "userCommonNameFR") as! String)
self.userCommonNameDEArray.append(object.object(forKey: "userCommonNameDE") as! String)
self.speciesNameArray.append(object.object(forKey: "speciesName") as! String)
self.userNotesArray.append(object.object(forKey: "userNotes") as! String)
}
} else {
print("Error: \(error!)")
}
}
}
当您说“它跳过”时,您是否在调试器中逐行监视执行?查找运行异步,除非您在块内设置断点,否则您不会看到执行进入那里。是的,我在调试器中逐行监视执行。在此过程中,我使用了步进,但它没有达到“if error==nil”行。你对如何挖掘北斗七星有什么建议吗?当然。在完成块内设置一个断点。然后全速继续执行。其思想是在当前运行循环返回后查找运行。只有在完成网络上的往返后,才执行完成,这比调试器运行findObje要晚得多cts function.if似乎你是对的。数据实际上是下载的,但是错误就在这个函数之后,就像我测试if array.count>0时一样,这就是被破坏的地方。谢谢