如何更新 Firebase 中的所有孩子?

Pet*_*šát 6 javascript firebase firebase-realtime-database

我正在尝试在一级树上更新所有子级的 firebase。例如这样的事情:

firebase.child("auctions").child().update({a: true});
Run Code Online (Sandbox Code Playgroud)

这给了我错误,因为孩子是空的。有什么办法可以更新拍卖的所有孩子吗?

Tyl*_*nis 3

您不需要那个空调用.child()

要做firebase.child("auctions").update({a: true});的就是更改 /auctions/a/whatever/auctions/a/true.

如果您确实想“更新树的某一层上的所有子级”,那么.set可能会更好,因为它将用您提供的对象替换端点处的所有数据。所以如果你跑了 firebase.child("auctions").set({a: true});那么下面的所有内容/auctions都会被替换为{a: true}

如果你不想炸掉下面的所有东西,/auctions而是想炸掉下面的所有东西,auctions/a你可以这样做 firebase.child("auctions/a").set(true);

有多种方法可以实现您的需求。我只是不能 100% 确定你真正需要什么。

  • 我写的firebase结构也许不是绝对清晰。我有这样的结构:“auctions > item1 > a = 5”,我想将所有 {{a}} 设置为 0(例如)。有什么方法可以写这样的: `firebase.child("auctions").child("*").update({a: 0});` 谢谢 (4认同)