Мне нужно уменьшить счетчик (с именем credits ), хранящийся в базе данных Firebase в реальном времени.
Чтобы уменьшить счетчик, я делаю так:
var ref = admin.database().ref('licenseCredits/' + name + '/credits');
ref.transaction( (value) => {
if (value === null) {
return 0;
} else if (typeof value === 'number') {
return value - 1;
} else {
console.log('The counter has a non-numeric value: ');
}
});
Поле credits корректно уменьшается.Я поместил этот код в вызываемую функцию, но я не знаю, как вернуть уменьшенное значение вызывающей стороне.Если я просто возвращаю результат ref.transaction, я получаю «Необработанное исключение RangeError».