2016-08-23 143 views
1

下面的代码返回一个错误:得到错误与PFAnonymousUtils.logIn

Cannot Covert value of type '(PDUser!, NSError!) -> Void' to expected argument type 'PFUserResultBlock'

PFAnonymousUtils.logIn{ (user: PFUser?, error: NSError?) -> Void in 
      if let user = user { 
       if user != nil { 
        println("Success") 
       } 
      } else { 
       println("Failed") 
      } 
     } 

我看着下面供参考的几个例子,以查看是否有一个解决方案: (1)Parse Facebook logInInBackgroundWithReadPermissions

(2)PFFacebookUtils login background cannot convert value to PFUserResultBlock

(3)iOS Developers Guide

+0

谢谢!我添加了一些编辑,测试后会发布我的解决方案 –

回答

1

所以用一些帮助这里是一个完整的解决方案: 以一个建议,我将不得不把:

PFAnonymousUtils.logIn{ (user, error) in 

PFAnonymousUtils.logIn{ (user: PFUser?, error: NSError?) -> Void 

下一个错误将是这一行:

if let user = user { 

其中编译器假定这不是可选的,所以最终解决方案我n代码将是

PFAnonymousUtils.logIn{ (user, error) in 
      if error == nil { 
       print("Success") 
      } 
      else { 
       print("Failed") 
      } 
     } 

这样,它会检查错误,如果出现错误,代码将打印出一行指示。

1

类型推断正在被抛弃。尝试没有类型。所以PFAnonymousUtils.logIn {(user,error)in这可能会修复它。

+0

谢谢,我目前正在修复此问题!不胜感激! –