Firebase:如何获得 User.uid?

Firebase: How to get User.uid?

我正在使用 Firebaseauth 来管理我的 iOS 应用的用户和数据。用户可以登录,并且他们的用户信息正确存储在数据库中。 但是当我试图让用户以不同的 viewController 写入数据库时​​,使用这个字符串:

self.ref.child("users").child(user.uid).setValue(["username": username])

抛出的错误是

Type user has no member .uid

我想这是有道理的,因为我还没有创建变量。但是我不知道怎么申报?

这是获取用户 uid 的方式:

let userID = Auth.auth().currentUser!.uid

更新: 由于此答案获得赞成票,请确保使用 guards:

防止您的应用程序崩溃
guard let userID = Auth.auth().currentUser?.uid else { return }

FIRAuth 实际上已重命名为 Auth。所以,根据最新的变化,它将是

let userID = Auth.auth().currentUser!.uid

编辑。

正如评论中指出的那样,强制展开可能会使应用程序崩溃。

guard let userID = Auth.auth().currentUser?.uid else { return }

您可能想要使用防护装置,因为如果用户未登录,强制解包可能会破坏您的应用程序。

guard let userID = Auth.auth().currentUser?.uid else { return }