【发布时间】:2016-11-04 11:44:20
【问题描述】:
我刚开始学习 IOS 开发,来自后端世界。我希望将用户 ID 传递给此函数并返回名称,所有数据都来自 Firebase。我目前试图打破闭包中的名称值的尝试不起作用,返回空字符串。我该如何构建此代码以使该“名称”变量返回。
func getNameOfUser(uid: String) -> String {
var name: String = ""
FIRAuth.auth()?.signInAnonymouslyWithCompletion() { (user, error) in
self.ref = FIRDatabase.database().reference()
self.ref!.child("users").child(uid).child("name").observeSingleEventOfType(.Value, withBlock: { (snapshot) in
name = snapshot.value! as! String
}) { (error) in
print(error.localizedDescription)
}
}
return name
}
【问题讨论】:
标签: ios swift asynchronous firebase closures