我正在使用 Parse,使用 swift 2 和 Xcode 7.2 制作一个类似 Twitter 的应用
但是我一直收到这个错误
Cannot convert value of type '(PFUser!, NSError!) -> Void' to expected argument type 'PFUserResultBlock?'
当我使用
PFUser.logInWithUsernameInBackground
命令。
我的具体代码如下:
PFUser.logInWithUsernameInBackground(usernameTextfield.text!, password: passwordTextField.text!){
(user:PFUser!, error:NSError!)->Void in
if ((user) != nil){
print("Login sucessful!")
}
else {
print("Login failed")
}
}
}))
}
当我尝试去掉感叹号和/或用问号替换它们时,我遇到了这个错误
'?' must be followed by a call, member lookup, or subscript
我是 swift 和 Xcode 的新手,所以请不要把我当成白痴,我只是 swift 的新手,仅此而已。
最佳答案
你的闭包类型应该是:(PFUser?, NSError?) -> Void
而不是 (PFUser!, NSError!) -> Void
。代替 !和 ?在闭包中的参数类型中。
关于swift - 如何使用 Parse 修复此错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34572003/