从Firebase数据库事件返回的快照事件在iOS上换了孩子



在更改节点时,我的应用中我从firebase获取数据:

handle = ref?.child("orders").child("4").observe(.childChanged, with: { (snapshot) in          
    if snapshot.key == "price" {
        print("price: (snapshot.value)")
    }
    if snapshot.key == "orders" {
        print("orders: (snapshot.value)")
    }                                 
}, withCancel: nil)

但是上述功能真的是这样做的方法吗?

我试图设置一个if语句以检查要返回的值,然后从 snapshot.value中获取该值,但是我担心如果我立即更改所有值,我无法从哪些节点snapshot.value来看。<<<<<<<<

是的

firebase文档(对于相应的childChanges数据库事件(提供了更多详细信息:

聆听列表中项目的更改。在修改子节点的任何时候,都会触发此事件。这包括对子节点后代的任何修改。FIRDataSnapshot传递给事件侦听器包含儿童的更新数据。

因此,snapshot.key标识了更新的子节点和snapshot.value相应的数据。

最新更新