【问题标题】:Update all child in Firebase更新 Firebase 中的所有孩子
【发布时间】:2018-09-17 22:14:09
【问题描述】:

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

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

【问题讨论】:

  • 通过for循环更新你的状态?您的状态应该同步到 Firebase 吗?
  • 我编辑它来解释,是的,它必须同步到 firebase

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


【解决方案1】:

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
    });
  });
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-21
    • 2018-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-14
    • 2021-04-22
    • 1970-01-01
    相关资源
    最近更新 更多