Estoy tratando de obtener un usuario de una colección de usuarios con la mayor cantidad de votos en una función cronometrada. He estado siguiendo los ejemplos que tienen en la documentación, pero todavía tengo problemas. ¿Alguna idea?
import * as functions from "firebase-functions"; import * as admin from "firebase-admin"; admin.initializeApp(); exports.testData = functions.pubsub.schedule("30 14 * * *") .timeZone("America/New_York") .onRun((context) => { const test = admin.firestore().collection("users"). orderBy("votes").limit(1); try { console.log("document data:", test.data()); } catch (e) { console.log("Error getting document:", e); } return null; });Su código no ha ejecutado la consulta en absoluto. Simplemente está creando un objeto de consulta, luego llamando a un método data() que no existe en ese objeto (probablemente causando que su código se bloquee). Sugiero revisar la documentación para aprender a usar get() para ejecutar la consulta. Devuelve una promesa que debes manejar correctamente.
return test.get() .then(snapshot => ...) .catch(error => ...)