【发布时间】:2017-02-24 12:40:27
【问题描述】:
我正在尝试检索用户的用户名并将其保存到变量中,尽管每当我运行代码时都没有任何反应。这是我的 Firebase 布局:
这是我的代码,位于我的viewDidAppear()
let uid = FIRAuth.auth()?.currentUser?.uid
let ref:FIRDatabaseReference!
ref = FIRDatabase.database().reference().root.child("users").child("\(uid)")
ref.observeSingleEvent(of: .value, with: { snapshot in
print("test")
if !snapshot.exists() { return }
let user = (snapshot.value as? NSDictionary)?["name"] as? String ?? ""
print(user)
let username = UIBarButtonItem(title: user, style: UIBarButtonItemStyle.plain, target: self, action: nil)
let picture = UIBarButtonItem()
self.navigationController!.navigationItem.rightBarButtonItem = username
})
【问题讨论】:
-
如果您在调试器中单步执行代码,会发生什么?它会进入
observeSingleEvent回调吗? -
代码运行,但是当我尝试打印用户名时没有任何结果(打印(用户))编辑:代码运行,但代码没有做任何事情。
标签: ios firebase firebase-realtime-database swift3 uibarbuttonitem