【问题标题】:Firebase Function receive data and sum from different pathFirebase 函数从不同路径接收数据和求和
【发布时间】:2018-07-20 04:44:18
【问题描述】:

我是 firebase 函数的新手。我想实现一个函数,可以对来自不同路径的值求和。这是firebase实时数据库结构。

sensor:{
  sensor-1: 1
  sensor-2: 1
  sensor-3: 1
  sensor-4: 1
  sum: 4  
 }

我想要可以对传感器 1-4 值求和并将其写在“sum:”上的函数 js。那是我的开始

    exports.sumsensor = functions.database.ref('sensor/{id}').onWrite((change)=>{ 
         //compute code in here
         return admin.database().ref('sensor/sum').set('total');
    });

我该如何实现。请帮帮我。

【问题讨论】:

    标签: firebase firebase-realtime-database google-cloud-functions


    【解决方案1】:

    你将不得不稍微改变你的数据库结构:

    sensor : {
        sensor-1: 1
        sensor-2: 1
        sensor-3: 1
        sensor-4: 1
    }
    
    sensorSum : 4
    

    这里是云功能代码:

    exports.sumsensor = functions.database.ref('sensor/{id}').onWrite((change,context)=>{ 
         let val = +change.after.val()
         //compute code in here
         return admin.database().ref().child('sensorSum').transaction(function(currentTotal) {
             return currentTotal + val;
         });
    });
    

    这里是参考链接:firebase transaction

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多