【发布时间】:2017-03-03 00:44:34
【问题描述】:
在视图控制器中,我有多个观察者代码。除了一个之外,所有这些都正常工作。我确定子路径是正确的。观察函数是否正确。我尝试了不同的视图控制器,它工作正常。这是我的火力基地结构:
这是我的观察者功能。
func downloadUserData(){
if let currentUser = FIRAuth.auth()?.currentUser{
print("AZAT: download user data id \(currentUser.uid))")
DataService.ds.REF_USERS.child(currentUser.uid).observe( .value, with: {(snapshot) in
if let userDict = snapshot.value as? Dictionary<String,Any>{
print("AZAT: userdict is \(userDict)")
let user = User(userData: userDict)
self.users.insert(user, at: 0)
}
})
}
}
我在viewDidLoad() 中调用了这个函数。 REF_USERS 是正确的,我很确定。
感谢您的帮助。
【问题讨论】:
-
好吧,看起来还不错,有什么问题?错误?哪条线?
-
我可以在控制台中看到 print("AZAT: download user data id (currentUser.uid))")。但我在控制台中看不到 print("AZAT: userdict is (userDict)")。观察不起作用@Dravidian
-
那么很可能不是字典,尝试打印快照本身
-
我试过了,我什至没有进入观察功能。我之前试过 if let userDict 语句,没用。
-
什么是
DataService.ds.REF_USERS?
标签: ios swift firebase firebase-realtime-database observers