我正在使用Firebase 3.4.0并执行此代码:
if snapshot.value!["username"] != nil {
self.usernameTextField.text = "\(snapshot.value!["username"]!)"
print("SNAPSHOT: \(snapshot.value!["username"])")
}
我从Firebase实时数据库中获取用户的用户名,并且对于此用户,没有给出用户名。当代码执行时,if语句中的两行会运行,但打印行会打印" nil"。
我的firebase数据结构:
"users": {
"9Tjjbsj852816": {
"Email": "test@test.com"
}
}
如果我正在运行if语句且对象为nil,为什么if语句中的代码正在执行?
答案 0 :(得分:0)
我在别人的帮助下想出来了!这是更新的if语句。我仍然无法弄清楚为什么Xcode将String视为nil而不是AnyObject。
if snapshot.value?["username"] as? String != nil {
self.usernameTextField.text = "\(snapshot.value!["username"]!!)"
}