我想查看Firebase并检查是否存在某个值的某个值以及该值是否存在。我想打印一份声明
databaseRef.child("books").queryOrdered(byChild: "Category").queryEqual(toValue: categorySegue).observe(.childAdded, with: { (snapshot) in
if snapshot.exists() {
print("data found")
}else{
print("no data found")
}
})
当子值存在时,它会打印出发现完全正常的数据,但是当它不存在时。它没有打印出没有找到的数据
答案 0 :(得分:1)
那是因为您正在观察.childAdded
,只有在您的查询与子项匹配时才会触发。
如果您还想在没有孩子匹配的情况下检测情况,您需要观察.value
事件并循环结果。
databaseRef.child("books").queryOrdered(byChild: "Category").queryEqual(toValue: categorySegue).observe(.childAdded, with: { (snapshot) in
if snapshot.exists() {
print("data found")
for child in snapshot.children {
print(child.key)
}
}else{
print("no data found")
}
})