Firebase 사용자 이름을 UserDefault에 저장하려고합니다.nil을 확인한 후 예기치 않게 nil이 발견되었습니다.
let databaseRef = FIRDatabase.database().reference()
databaseRef.child("Users").child((FIRAuth.auth()?.currentUser?.uid)!).observe(.value, with: { (snapshot) in
print("log in 4")
print(snapshot.value)
if snapshot.value != nil {
print("log in 4.1")
UserDefaults.standard.set(snapshot.value!["username"], forKey: "username")//Crash probably occurs here
print("log in 4.2")
}
})
시스템 인쇄 log in 4
및 log in 4.1
있지만 4.2 : 여기에 내가 가진 것입니다. 사이의 라인에서 오류가 발생해야합니다. snapshot.value
이 0이 아닌지 확인하지만 여전히 nil을 출력합니다. 이 문제를 어떻게 해결할 수 있습니까? 감사! 당신은 당신이 푸는 원하는 값을 얻을 바인딩을 선택적으로 사용한다
'snapshot.value [ "이름"]'에 대한 값이없는 경우 전무를 반환합니다 'username' 키를 누른다. 로그 문을 사용하는 대신 디버거와 단일 스테핑을 사용하는 방법을 배워야합니다. – Paulw11
@ Paulw11 왜이 질문에 답변을 게시하지 않으셨습니까? – Losiowaty
대답이 아닐 수도 있습니다. (아마도 그렇습니다.) 그러나 질문자에게 대답을 게시하기 전에 의견을 확인하는 것을 선호합니다. – Paulw11