更新Firebase中的所有孩子

时间:2018-04-08 11:18:47

标签: javascript json reactjs firebase firebase-realtime-database

在Firebase的数据库中,我需要更新open值并将其传递给所有孩子的false。我怎么能在Javascript中做到这一点? 像这样的东西

let dbCon = firebase.database().ref("/messages/" + *);
    dbCon.update({
      open: false
    });

enter image description here

1 个答案:

答案 0 :(得分:4)

Firebase数据库与SQL UPDATE messages SET open=false无关。

要更新Firebase中的节点,您必须首先获得对该特定节点的引用。要获取对节点的引用,您必须知道该节点的完整路径。

这意味着您首先需要读取数据,然后循环遍历它,然后依次更新每个子节点。在代码中:

let dbCon = firebase.database().ref("/messages/");
dbCon.once("value", function(snapshot) {
  snapshot.forEach(function(child) {
    child.ref.update({
      open: false
    });
  });
});