2017-05-24 76 views
1

我对firebase云端功能是全新的。我想在云端函数中引用不同的参考,并获得一个具有这些值的数组。Firebase云端功能 - 观察编号

因此,例如我想从('水果')获得所有的水果。 类似于(IOS):

ref.observe(.childAdded ...) 

我该如何编码?

回答

2

当添加新的子节点时,目前没有办法只触发云端功能。相反,您必须触发每次写入(使用onWrite()),然后在代码中进行过滤。

Firebase documentation on using previous values有这个例子:

exports.makeUppercase = functions.database.ref('/messages/{pushId}/original') 
    .onWrite(event => { 
     // Only edit data when it is first created. 
     if (event.data.previous.exists()) { 
     return; 
     } 
     // Exit when the data is deleted. 
     if (!event.data.exists()) { 
     return; 
     } 
     ... 

嗯....对你的问题进行二读,你可能会寻找如何从数据库的其它部分云功能读取里面。对于你使用火力地堡Admin SDK中,你可以在this sample in the functions-samples repo找到一个例子:

admin.database().ref('/messages').push({original: original}).then(snapshot => { 
    ... 
}) 
+0

谢谢!是的,我正在寻找如何获取数据库中其他部分数据的函数。但是,我不想更改这些数据 - 只是为了读取它并让它使用它的值。我怎样才能做到这一点?如果我明白了,这个例子只显示如何改变它(?)。谢谢 – ktm125

+0

Cloud Functions示例演示如何从您的函数访问数据库。要了解如何读取数据,请研究Firebase Admin SDK的文档:https://firebase.google.com/docs/database/admin/retrieve-data –