【问题标题】:Firebase iOS - access user object from other view controllerFirebase iOS - 从其他视图控制器访问用户对象
【发布时间】:2017-09-30 17:01:54
【问题描述】:

我有两个视图控制器,一个是用户自己注册(电子邮件、密码)到应用程序的地方,另一个是他可以选择用户名的地方,我设法让第一个视图控制器与 Firebase 一起工作,这意味着我的用户已通过身份验证,我设法将他的电子邮件地址输入实时数据库,但我在将他选择的用户名更新到数据库时遇到问题,我试过这个:

self.ref.child("Users").child(user.uid).setValue(["username": usernameTextfield.text])

我认为这不起作用,因为我的视图控制器不知道对象用户。有人可以告诉我该怎么做。谢谢

【问题讨论】:

    标签: ios swift firebase firebase-realtime-database


    【解决方案1】:

    如果您在第一个视图控制器的上下文中创建了一个 user 对象,那么您是对的,您将无法从第二个视图控制器访问它。

    但是,您可以通过调用 Auth.auth().currentUser 在第二个视图控制器上重新创建此 user 对象,如下所示:

    if let user = Auth.auth().currentUser {
        // use the user object here
        self.ref.child("Users").child(user.uid).setValue(["username": usernameTextfield.text])
    } else {
        print("no user is logged in")
    }
    

    【讨论】:

    • 嗨布拉德利,我自己设法做到了,但这也是我找到的解决方案。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 1970-01-01
    • 2012-03-30
    相关资源
    最近更新 更多