Ich habe eine Referenz, die existiert und ich verwende observeEventType
, um die Daten abzufragen. Die Referenz enthält jedoch möglicherweise keine Daten, da der Benutzer sie löscht. Ich teste es mit snapshot.exists()
. In der Situation unter snapshot.exists()
wird false/no
zurückgegeben. Da es falsch ist möchte ich etwas anderes tun, aber der Code läuft nieWas tun, wenn snapshot.exists() false zurückgibt?
Wie mache ich so etwas anderes, wenn snapshot.exists() false/no zurückgibt?
//there is no data at levelTwo so there's nothing to observe
let levelTwoRef = dbRef.child("players").child("uid").child("levelTwo")
levelTwoRef.observeEventType(.ChildAdded, withBlock: {
(snapshot) in
if snapshot.exists(){
if let dict = snapshot.value as? [String:AnyObject]{
let power = dict["power"] as? String
let score = dict["score"] as? String
}
//this will never run because the data has been deleted
} else{
do something else as an alternative //why isn't this running??
}
})
Aktualisieren Sie Ihre Frage mit Ihrer Datenbank JSON Struktur (aktuelle, als Text kein Bild!). – Dravidian
Dies ist nicht Ihre JSON-Struktur. Sie erhalten Ihre JSON-Struktur, indem Sie in der Firebase-Datenbankkonsole auf EXPORT JSON klicken, sie auf die relevantesten Teile minimieren und dann veröffentlichen. – Dravidian
@Dravidian Du hast mir etwas Neues beigebracht. Ich habe nie davon gewusst. Ich werde es in ein paar tun. Vielen Dank! –