Этот вопрос has been asked before, но я не совсем понял ответ.Как оценивать голоса по нескольким дочерним узлам Firebase?
Мне нужно рассчитать среднее значение массива данных из Firebase, поэтому у меня есть два шага.
- Получить все данные
- Определите, сколько записей есть в том, что те же данные
- Вычислить среднее
Мой код:
myDataRef.orderByChild("time").startAt(time-180000).endAt(time).on("child_added", function(snapshot) {
votes = snapshot.val().vote;
//console.log("Vote value:" + votes)
});
myDataRef.orderByChild("time").startAt(time-180000).endAt(time).on("value", function(snapshot) {
numberOfVotes = snapshot.numChildren();
//console.log("Number of Votes:" + numberOfVotes)
});
function calculateAverage(numberOfVotes, votes) {
return eval(votes.join('+'))/numberOfVotes;
}
console.log(calculateAverage)
Я думаю, что я неверно истолковывая что-то супер базовое, потому что я не могу понять, как получить данные «из» запроса Firebase и в функцию. Что мне не хватает?
принести вызов функции обратного вызова в, что там данные, необходимые жизни. – dandavis
@ dandavis, но есть два обратных вызова, как мне это обработать? –