Как подсчитать количество документов (onWrite) и сохранить счетчик по определенному пути с помощью облачных функций? - PullRequest
0 голосов
/ 30 марта 2019

С помощью моего кода я могу подсчитать количество документов в базе данных Firebase Realtime, но мне нужно, чтобы у них был счетчик для каждого groupId, который затем сохранялся по отдельному пути для каждого groupId.

Вот путь документов, которые я считаю

сообщения / {идентификатор_группы}

Я хочу сохранить его здесь, каждый счетчик для его собственного идентификатора группы

totalmessages / идентификатор_группы

 exports.messageCounter = functions.database.ref('/messages/{groupId}').onWrite((change, context) => {
   const data = change.after.val();
   const group = data.groupId;
   const count = Object.keys(data).length;
      return admin.database().ref('totalmessages/'+group).child('_count').set(count);
 });

В настоящее время возвращается код:

enter image description here

также он перезаписывает "_Count" новыми данными и не создает несколько деревьев.

1 Ответ

0 голосов
/ 30 марта 2019

Если вы пытаетесь получить подстановочный знак groupId при вызове функции, вы можете использовать контекст для этого:

const group = context.params.groupId;

См. Документацию для получения более подробной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...