【发布时间】:2016-08-05 22:35:58
【问题描述】:
我正在使用 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 语句中的代码在执行?
【问题讨论】:
-
与“用户名”键关联的值可以是字符串“nil”吗?
-
查看我添加到问题中的 Firebase 数据结构。
-
可能是字符串的值是“”(即空字符串)与 nil?
-
我不明白为什么它会打印出“nil”,而不是“”
-
snapshot.value的类型是什么?也许是AnyObject??
标签: ios swift xcode firebase firebase-realtime-database