1
보기 컨트롤러에는 여러 개의 관찰자 코드가 있습니다. 모두 하나만 제외하고는 올바르게 작동합니다. 나는 자식 경로가 맞을 것이라고 확신한다. 관측 기능이 정확합니다. 다른보기 컨트롤러에서 시도하고 올바르게 작동했습니다. 내 firebase 구조는 다음과 같습니다 : 스위프트 - 파이어베이스 다중 관찰자
그리고 여기 내 옵저버 기능입니다.
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
이 맞습니다. 꽤 확신합니다.
도움 주셔서 감사합니다.
좋아요, 괜찮은 것 같습니다. 무엇이 문제입니까? 오류? 어느 선 이요? – Dravidian
콘솔에서 "print ("AZAT : 사용자 데이터 ID \ (currentUser.uid) 다운로드 ")를 볼 수 있습니다. 하지만 난 인쇄 ("AZAT : userdict \ (userDict)") 콘솔에서 볼 수 없습니다. 관찰은 작동하지 않습니다 @Dravidian – Azat
그럼 아마도 대부분은 사전이 아닙니다. 자체적으로 스냅 샷을 인쇄 해 봅니다. – Dravidian