Parse Cloud with Swift PFIdResultBlock Error

一世执手 提交于 2019-12-31 07:15:11

问题


 PFCloud.callFunctionInBackground("hello", withParameters: ["test":"tester"]) {
            (response: AnyObject?, error: NSError?) -> Void in
            if error == nil {
                let responseString = response as? String
                print(responseString)
            } else {
                print(error!.description)
            }
        }

I am getting the error:

Cannot convert value of type '(AnyObject?, NSError?) -> Void' to expected argument type 'PFIdResultBlock?' (aka 'Optional<(Optional, Optional) -> ()>')

Even if I add as! PFIdResultBlock, the error will not go away.

How can I go about fixing this?

I definitely appreciate your help on this one!!


回答1:


There is no need to specify the variable types while implementing the closure (Block in Objective-C) unlike Objective-C. You just need to change your code to the following:

PFCloud.callFunction(inBackground: "",
                         withParameters: ["": ""]) { (response, error) in
                            if error == nil {
                                let responseString = response as? String
                                print(responseString)
                            } else {
                                print(error?.localizedDescription)
                            }
}


来源:https://stackoverflow.com/questions/50892693/parse-cloud-with-swift-pfidresultblock-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!