javascript - Angularfire2更新所有子节点

标签 javascript firebase firebase-realtime-database angularfire2

在 Firebase 中,我有这个数据库

miodb

我想更新所有子节点(例如67-68的子节点),将键“status”设置为“read”。

这就是我获取项目列表的方式

this.listaquery = db.list('https://xxxxxxxx.firebaseio.com/chat/'+this.navParams .get('chatRoom'),{
          query: {
              orderByChild: 'id',
              equalTo: this.navParams .get('id2')
          }
        });
      }

我知道这是更新子项的代码

this.listaquery.update('-KnFI98Lnm-BYXxR_zoY',{status:'read'});

但是如果我想用一个命令更新所有子项呢?

最佳答案

我找到了这个解决方案(我不知道它是否是最好的)

this.listaquery = db.list('https://delega-facile.firebaseio.com/chat/'+this.navParams .get('chatRoom'),{
  query: {
      orderByChild: 'id',
      equalTo: this.navParams .get('id1')
  },
  preserveSnapshot: true
});


this.listaquery
          .subscribe(snapshots => {
              snapshots.forEach(snapshot => {
                  this.listaquery.update(snapshot.key,{status :'read'});
                  /*
                  console.log(snapshot.key)
                  console.log(snapshot.val())
                  */
              });
          })

关于javascript - Angularfire2更新所有子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45484201/

相关文章:

Javascript 取代 child ?

java - Firebase Android - 只需要特定表位于本地设备中

java - 从 Firebase 实时数据库检索数据到 ListView

javascript - Firebase云函数在Flutter中返回null,因为它仍在运行

ios - 如何解决 swift iOS 的 libc++abi.dylib 错误

android - 如何使用 Android 获取 Firebase 数据库中的值?

javascript - Rails 中的分页 Ajax 工作不一致

javascript - Nest Js - 如何生成文件并将其作为请求响应发送而不在本地保存文件?

javascript - 为什么这个 javascript 字符串匹配调用只返回一个结果?

ios - 如何从新的 Firebase 存储下载和查看图像?