if let user = Auth.auth().currentUser {
post.setUID(uid: user.uid)
//
let findUserName = Database.database().reference().child("users").child(user.uid)
findUserName.observeSingleEvent(of: .value, with: { (snapshot) in
let dictionary = snapshot.value as? [String: AnyObject]
let theUserName = dictionary?["username"] as? String ?? ""
})
print("test:", theUserName) <-- unresolved identifier
//post.setPostUserName(username: theUserName)
}
我从用户处提取了用户名字段,并收到错误“未解析的标识符”。
您在闭包内创建了theUserName。您不能在封闭之外访问它。将print("test:", theUserName)
放在observeSingleEvent({})内,如下所示
findUserName.observeSingleEvent(of: .value, with: { (snapshot) in
let dictionary = snapshot.value as? [String: AnyObject]
let theUserName = dictionary?["username"] as? String ?? ""
print("test:", theUserName)
})