可选类型'Any?'的值没有打开

时间:2018-01-26 12:11:45

标签: swift facebook-login optional any

我正在尝试实施Facebook登录。从https://www.youtube.com/watch?v=MNfrBdyEvmY学习,但上面的类型有错误。这是我的代码:

let parameters = ["fields": "email, first_name, last_name, picture.type(large)"]
    FBSDKGraphRequest(graphPath: "me", parameters: parameters).start { (connection, result, error) in
        if error != nil{
            print(error ?? "error")
            return
        }
        if let email = result["email"] as? String{
            print("Email: \(email)")
        }
    }

enter image description here 请帮我解决一下这个。感谢

2 个答案:

答案 0 :(得分:3)

你需要将类型Any转换为Swift字典类型,你可以这样做:

if let userInfo = result as? [String: Any] {
    let email = userInfo["email"] as? String
}

答案 1 :(得分:1)

这些类型的错误实际上为您提供了使用Xcode自动更正功能的选项。如果您单击红色圆圈,然后单击它显示的修复程序,它应该会自动修复您的问题。它并不总是准确的,但90%的时间都是准确的。