私は存在するrefがあり、私はobserveEventType
を使ってデータを問い合わせます。しかし、ユーザーが削除したため、refにデータがない可能性があります。私はsnapshot.exists()
を使ってテストします。以下の状況では、snapshot.exists()
はfalse/no
を返します。偽であるため、何か他のことをしたいがコードは決して実行されないsnapshot.exists()がfalseを返す場合の対処方法
snapshot.exists()がfalse/noを返すときはどうすればよいですか?
//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??
}
})
更新あなたの質問(実際、テキストとしてではないIMAGE!)。 – Dravidian
これはあなたのJSON構造体ではありません。FirebaseデータベースコンソールでEXPORT JSONをクリックしてJSON構造体を取得し、最も関連性の高い部分に最小化して投稿します。 – Dravidian
@Dravidianあなたは何か新しいことを教えてくれました。私はそれについて知らなかった。私はそれを少しでもやっていきます。ありがとう! –