iOS FBSDK 组合 'first_name' 和 'last_name' 获取全名 - 语法问题

标签 ios swift firebase-authentication

我正在尝试将两个 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/

相关文章:

ios - 下载mp3文件,保存到磁盘,然后以URL读取

ios - 启动导航 SKMAPS 后无法移动 map

ios - 如何使用自动布局将一个 UIView 定位在其他两个 UIView 的中心?

ios - 按字母顺序更改数组中的标签文本

ios - 处理 Firebase + Facebook 登录流程

android - 成功的Firebase身份验证登录时发生错误

firebase - firebase 是第一次检查用户吗

android - 如何在 flutter 应用程序中设置 facebook 帐户工具包

c - 在 Swift 中格式化 Linphone SDK 的路径时出现问题

swift - Swift iPad 中的侧面板