db.collection("todolist").get().then((querySnapshot) => { console.log(querySnapshot[querySnapshot.length -1])})Esto resulta en indefinido. ¿Cómo obtengo el último elemento de un documento?
Si solo te interesa el último documento, considera ordenar la consulta, y solicitar solo un documento, así ahorras ancho de banda y costo. Digamos que tiene un campo llamado timestamp de tiempo, puede obtener el último (y solo ese) con:
db.collection("todolist") .orderBy("timestamp", "desc") .limit(1) .get().then((querySnapshot) => { console.log(querySnapshot.docs[0]) }) Como ahora solo solicitó un documento, puede usar docs[0] para obtenerlo.
querySnapshot no es una matriz, por lo que simplemente puede indexarla. Es un objeto QuerySnapshot y le sugiero que se familiarice con la documentación de esa API. Puede ver que tiene una propiedad docs , que es una matriz.
querySnapshot.docs[querySnapshot.docs.length-1]o
querySnapshot.docs[querySnapshot.size-1]