【问题标题】:Firebase Realtime Database - Web / Javascript - how to to execute multiple write operations as a single batchFirebase 实时数据库 - Web / Javascript - 如何将多个写入操作作为一个批次执行
【发布时间】:2020-11-24 09:03:39
【问题描述】:

我注意到 Firebase Firestore 为我们提供了将多个写入操作作为单个批处理执行的选项,其中包含 set()、update() 或 delete() 的任意组合。

Firebase Realtime 也可以吗?


基本上,我有以下数据:

main: {
    first: {
        keywords: {
            one: { active: false, required: false },
            two: { active: false, required: false },
            three: { active: false, required: false },
        }
    }
}

我创建了一个操作来更新单个值,如下所示:

database.ref(`main/${category}/keywords/${keyword}/`).update({ active })
     

我需要创建一个新操作来一次更新所有关键字子项的活动值。

我知道我可以通过像这样更新整个对象来更新“关键字”:

database.ref(main/${category}/keywords).update(这里更新的对象)

但是,出于好奇,有没有一种方法可以让我循环进入关键字并更新特定值?也许是这样的?

database.ref(`main/${category}/keywords/`).forEach(item => item.update({ active }))

【问题讨论】:

    标签: javascript firebase web firebase-realtime-database


    【解决方案1】:

    也许,this 会帮助你:

    let dbConnection = firebase.database().ref(`main/${category}/keywords/`);
    dbConnection.once('value', dataSnapshot => {
      dataSnapshot.forEach(child => {
        child.ref.update({ active });
      });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-06
      • 2020-08-11
      • 1970-01-01
      • 2014-08-10
      • 2021-12-17
      相关资源
      最近更新 更多