swift - 变量未保存在闭包之外

标签 swift parse-platform closures

我正在使用 Parse 作为数据库。

问题:我正在查询数据库并保存一个对象,但它似乎没有在查询函数之外保存。我认为这是因为我需要刷新变量或其他东西,但我不知道该怎么做。

相关代码:

class AddClassViewController: UIViewController {

var classroom = Classroom()

var checkClassList: [Classroom] = []

@IBAction func enrollClassButton(sender: AnyObject) {
    self.classroom.classCode = classCodeText.text.uppercaseString
    self.classroom.year = yearText.text
    self.classroom.professor = professorNameText.text

    ClassListParseQueryHelper.checkClass({ (result: [AnyObject]?,error: NSError?) -> Void in
        self.checkClassList = result as? [Classroom] ?? []
        //count is 1 inside here
        println(self.checkClassList.count)
        }, classCode: self.classroom.classCode!)

    //count is 0 out here
    println(self.checkClassList.count)


}

//this gets class with matching classcode
static func checkClass(completionBlock: PFArrayResultBlock, classCode: String){
    let query = PFQuery(className: "Classroom")
    query.whereKey("ClassCode", equalTo: classCode)
    query.findObjectsInBackgroundWithBlock(completionBlock)
}

最佳答案

这就是我解决这个问题的方法:

class ClassListParseQueryHelper{
//this gets class with matching classcode
static func checkClass(classCode: String) -> [PFObject]{
    let query = PFQuery(className: "Classroom")
    query.whereKey("ClassCode", equalTo: classCode)
    var test = query.findObjects() as! [PFObject]
    return test
}

self.checkClassList = ClassListParseQueryHelper.checkClass(self.classroom.classCode!) as! [Classroom]

关于swift - 变量未保存在闭包之外,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32407879/

相关文章:

javascript - 使用 for 循环通过 Parse 创建子类对象

javascript - 有没有办法在禁用客户端推送的情况下在 Node.js 上使用 Parse 发送推送?

error-handling - 创建使用 try 运算符的闭包时如何修复错误 "type annotations needed"?

javascript - 如何在 javascript 闭包中将 'this' 保留在类中

scala - 闭包和通用量化

ios - 在 Swift 中没有 FBSDKLoginButton 的 Facebook 登录

ios - 如何在 Swift 中显示 3 秒后消失或可由用户立即取消的弹出消息?

objective-c - Objective C 和 Swift 是否支持分层继承?

ios - 如何在 iOS 上更改 UIButton 的文本颜色并使其保持选中状态

ios - 从 Parse 中检索信息