2017-05-24 77 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 –