То, что я пытаюсь достичь, это просто увеличить значение в базе данных с помощью транзакции. Это работает для меня, как задумано, но я всегда получаю следующую ошибку в моей консоли Firebase:
Function returned undefined, expected Promise or value
Мой текущий вызов выглядит следующим образом:
exports.reportCounter = functions.database.ref('/user/{userId}/reports/{initiatorId}').onWrite((change,context) => {
const userId = context.params.userId;
return userRef.child(userId).child("numReports").transaction(function(numReports) {
return change.after.exists()?((numReports || 0) + 1):(numReports - 1);
})
});
Я также попытался вернуть обещание напрямую:
return userRef.child(userId).child("numToIncrement").transaction(function(numToIncrement) {
return ((numToIncrement || 0) + 1);
});
В обоих случаях код делает то, что должен, но я все равно получаю указанную ошибку.