a función @node js onWrite no funciona correctamente en la función de Google Cloud
Tengo esta función de nodo js que intenta actualizar el índice de Algolia una vez que se realiza una adición / actualización / eliminación a las listas de nodos
exports.indexlisting_algolia =
functions.database.ref('/Listings/{listingId}').onWrite((snapshot, context) => {
const index = algolia.initIndex('Listings');
// var firebaseObject = snapshot.data;
var firebaseObject = snapshot.data.val();
console.log("test ",firebaseObject)
firebaseObject.objectID = context.params.listingId;
return index.saveObject(firebaseObject).then(
() =>
snapshot.data.adminRef.parent.child('last_index_timestamp').set(
Date.parse(event.timestamp)));
});
este es mi error thraceback
TypeError: no se puede leer la propiedad 'val' de undefined en exports.indexlisting_algolia.functions.database.ref.onWrite (/user_code/index.js:807:40) en Object. (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:112:27) en next (nativo) en /user_code/node_modules/firebase-functions/lib/cloud-functions.js:28:71 en __awaiter (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:24:12) en cloudFunction (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:82:36) en / var / tmp / worker / worker.js: 733: 24 en process._tickDomainCallback (internal / process / next_tick.js: 135: 7)
line 807 es esta función
var firebaseObject = snapshot.data.val();
Qué estoy haciendo mal y cómo puedo solucionar est