2017-05-26 2 views
1

Ich versuche, zuletzt hinzugefügt Kind in Cloud-Funktion zu bekommen. Hier ist der Code. Ich möchte fragen, ob irgendeine Funktion oder Abfrage verfügbar ist, um das zuletzt hinzugefügte Kind zu bekommen. Hier ist mein Code:Firebase Cloud-Funktion, Holen Sie sich das letzte Kind hinzugefügt

PS. Ich möchte keine Kinder wiederholen.

+0

Dies ist nicht genau das, was Sie brauchen, aber ich denke, dass es Ihnen helfen kann: https://gist.github.com/MiroHibler/4740915 –

Antwort

0

Ich bin nicht genau sicher, was Ihr Anwendungsfall ist, aber das wird Sie das letzte Kind zu bekommen:

exports.makeUppercase = functions.database.ref('aaa-fff/searchIndex') 
    .onWrite(event => { 
    // all records after the last continue to invoke this function 
    var lastChild; 
    event.data.forEach(function(child) { 
     lastChild = child; 
    }); 
    console.log(lastChild.val()); 
}); 
+0

Ich möchte keine Schleife, die Iteration wird 1 Million mal sein, wenn die Anzahl der Kinder 1 Million ist. –

+1

Ihr Code wird für jede Änderung in '/ aaa-fff/searchIndex' ausgelöst und erhält alle'/aaa-fff/searchIndex'. Mit einer Million Kindknoten ist die Schleife nicht der teure Teil. Wenn Sie nur für neue Kindknoten ausgelöst werden möchten, sollten Sie eine Stufe tiefer 'aaa-fff/searchIndex/{pushid} 'auslösen. Beispiele finden Sie in diesem Abschnitt in den Dokumenten: https://firebase.google.com/docs/functions/database-events#handle_event_data –

Verwandte Themen