我有使用universalGender
代码从firebase检索的类变量observeSingleEvent
。我将此变量设置为等于从Firebase获取的值。一些奇怪的事情:当我在Firebase闭包中print
变量时,我得到了预期的输出。但是,一旦我访问此变量或将其打印在闭包之外,它就等于一个空字符串,这就是我将该变量初始化为类顶部的内容。这是我的代码。请帮忙!
var universalGender=String()
@IBAction func nextButtonTapped(_ sender: Any) {
let databaseRef=Database.database().reference()
databaseRef.child("Users").child(Auth.auth().currentUser!.uid).observeSingleEvent(of: .value) { (snapshot) in
let value=snapshot.value as! [String:String]
let gender=value["Gender"] as!String
self.universalGender=gender
}