我正在尝试将两个 FBSDKGraphRequest parameters 组合到 Firebase 的单个数据库条目中,以便它看起来与 Sign 的用户相同使用电子邮件。
我想将 Facebook 的“first_name”和“last_name”组合成一个“Full Name”条目。我已经尝试了所有我能想到的语法,但我无法让它发挥作用。
目前它看起来像这样:
//.. Code that sets up the parameters and guard statement
let firstname = result["first_name"] as? String,
let lastname = result["last_name"] as? String,
let fullname = result["first_name","last_name"] as? String
//.. Code that saves details to db
First name 和 Last Name 有效,但只要我将两者结合起来,它就不会执行保护 block
最佳答案
您不能在字典中使用两个单独的键并得到一个字符串。每个键都有自己单独的字符串。你可能想做这样的事情:
guard let firstName = result["first_name"] as? String else {
// Handle no first name
return
}
guard let lastName = result["last_name"] as? String else {
// Handle no last name
return
}
let fullName = "\(firstName) \(lastName)"
换句话说,你需要编写组合字符串的代码,使用string interpolation .结果字典中的任何内容都不会自行执行此操作。
旁注:您似乎需要更好地了解 Swift 字典(以及通常的 Swift 常量、变量和类型)的工作原理。我建议深入研究 collection types文档。
关于iOS FBSDK 组合 'first_name' 和 'last_name' 获取全名 - 语法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48770034/