У меня проблема с функциями Firebase. То, что я пытаюсь сделать, это когда дочерний элемент Items обновляется, тогда я хочу получить значение Count и выполнить дальнейшие вычисления, но я сталкиваюсь с тем, что консоль журнала firebase всегда показывает ошибку «TypeError: Невозможно прочитать свойство 'val' неопределенного ".
структура JSON
"VTEST" : {
"A" : {
"Count" : 5,
"Items" : {
"item1" : "apple"
},
"NUMBER" : 5
},
"B" : {
"Count" : 8,
"Items" : {
"item1" : "orange;"
},
"NUMBER" : 3
},
"C" : {
"Count" : 10,
"Items" : {
"item1" : "grape"
},
"NUMBER" : 7
},
"D" : {
"Count" : 12,
"Items" : {
"item1" : "grava"
},
"NUMBER" : 10
},
"E" : {
"Count" : 15,
"Items" : {
"item1" : "fish"
},
"NUMBER" : 12
},
"F" : {
"Count" : 18,
"Items" : {
"item1" : "chicken;"
},
"NUMBER" : 8
}
}
Мой код:
exports.ItemCount = functions.database.ref('/VTEST/{ID}/Items').onUpdate((updateRef, context) => {
var childCount = updateRef.after.numChildren();
var newReference = updateRef.after.ref.parent.child('/Count');
var Count = newReference.val();
Count = Count + childCount;
return updateRef.ref.update({Count})
})
То, что я ожидаю, это то, что значение Count будет обновлено, но оно всегда выдает ошибку: «TypeError: Невозможно прочитать свойство val из undefined»
Может кто-нибудь сказать мне, что я здесь делаю неправильно, я не понимаю.