Quiero asegurarme de que entiendo correctamente la semántica de recuperación de Firestore.
Tengo una consulta que obtiene una lista de documentos de Firestore, de una colección llamada "ejemplo".
onSnapshot(myQuery of example collection, snapshot => { // contains various documents // including documentId = 123abc }) En una parte diferente de mi aplicación, configuré onSnapshot para un solo documento (que se incluyó en los resultados de la consulta anterior):
onSnapshot(doc(db, "example", "123abc"), snapshot => [...])Entonces, el documento para el que estoy configurando un oyente ya tiene un oyente, como parte del oyente de consulta general que se usa en una parte diferente de la aplicación (pero aún en ejecución).
Mi pregunta es : ¿Agregar una instantánea al documento individual da como resultado otra lectura de Firestore, o usa automáticamente el mismo detector de documentos y no agrega otra lectura? Si es así, ¿eso es válido para los cambios en el documento?
Avíseme si necesita que aclare la pregunta. ¡Gracias por adelantado!
El SDK de Firebase deduplica los oyentes en segundo plano, por lo que agregar un oyente de instantáneas adicional para un documento que ya está en la memoria le dará esa instantánea de la memoria y no volverá a leer el documento desde el servidor.