Funciones
Función | Descripción |
---|---|
function(app, ...) | |
getFirestore(app) | Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada. |
getFirestore(app, databaseId) | (BETA) Muestra la instancia de Firestore existente que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada. |
inicializarFirestore(app, configuración) | Inicializa una instancia nueva de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que a cualquier otra función, incluida getFirestore(). Si los parámetros de configuración personalizados están vacíos, esta función equivale a llamar a getFirestore(). |
inicializarFirestore(app, settings, databaseId) | (BETA) Inicializa una instancia nueva de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que a cualquier otra función, incluida getFirestore(). Si los parámetros de configuración personalizados están vacíos, esta función equivale a llamar a getFirestore(). |
function(firestore, ...) | |
collection(firestore, path, pathSegments) | Obtiene una instancia de CollectionReference que hace referencia a la colección en la ruta de acceso absoluta especificada. |
collectionGroup(firestore, collectionId) | Crea y muestra una nueva instancia de Query que incluye todos los documentos de la base de datos que se encuentran en una colección o subcolección con el collectionId especificado. |
connectFirestoreEmulator(firestore, host, port, options) | Modifica esta instancia para que se comunique con el emulador de Cloud Firestore.Nota: Se debe llamar a esta instancia antes de que se use para realizar operaciones. |
doc(firestore, path, pathSegments) | Obtiene una instancia de DocumentReference que hace referencia al documento en la ruta de acceso absoluta especificada. |
runTransaction(firestore, updateFunction, options) | Ejecuta el updateFunction determinado y, luego, intenta confirmar los cambios aplicados dentro de la transacción. Si se modificó algún documento leído en la transacción, Cloud Firestore vuelve a intentar el updateFunction . Si no se confirma después de 5 intentos, la transacción falla.La cantidad máxima de escrituras permitida en una sola transacción es 500. |
terminate(firestore) | Finaliza la instancia Firestore proporcionada.Después de llamar a terminate() , solo se pueden usar las funciones clearIndexedDbPersistence() . Cualquier otra función arrojará una FirestoreError . La rescisión no cancela las escrituras pendientes, y no se resolverán las promesas que esperan una respuesta del servidor.Para reiniciar después de la finalización, crea una instancia nueva de Firestore con getFirestore().Nota: En circunstancias normales, no es necesario llamar a terminate() . Esta función es útil solo cuando deseas forzar a esta instancia a que libere todos sus recursos o en combinación con clearIndexedDbpersistent() para garantizar que se destruya todo el estado local entre ejecuciones de pruebas. |
writeBatch(firestore) | Crea un lote de escrituras, que se usa para realizar múltiples escrituras como una sola operación atómica. La cantidad máxima de escrituras permitidas en un solo WriteBatch es de 500.El resultado de estas escrituras solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
function() | |
count() | Crea un objeto AggregateField que se pueda usar para calcular el recuento de documentos en el conjunto de resultados de una consulta. |
deleteField(). | Muestra un centinela para usar con updateDoc() o setDoc() con {merge: true} a fin de marcar un campo para su eliminación. |
documentId() | Devuelve un centinela especial FieldPath para hacer referencia al ID de un documento. Se puede usar en consultas para ordenar o filtrar por el ID de documento. |
getFirestore() | Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada. |
serverTimestamp() | Muestra un centinela usado con setDoc() o updateDoc() para incluir una marca de tiempo generada por el servidor en los datos escritos. |
function(databaseId, ...) | |
getFirestore(databaseId) | (BETA) Muestra la instancia de Firestore existente que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada. |
function(elements, ...) | |
arrayRemove(elementos) | Muestra un valor especial que se puede usar con setDoc() o que le indica al servidor que quite los elementos especificados de cualquier valor de array que ya exista en el servidor. Todas las instancias de cada elemento especificado se quitarán del array. Si el campo que se modifica aún no es un array, se reemplazará por uno vacío. |
arrayUnion(elementos) | Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que una los elementos dados con cualquier valor de array que ya exista en el servidor. Cada elemento especificado que aún no existe en el array se agregará al final. Si el campo que se modifica aún no es un array, se reemplazará por uno que contenga exactamente los elementos especificados. |
function(field, ...) | |
promedio(campo) | Crea un objeto AggregateField que se pueda usar para calcular el promedio de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta. |
suma(campo) | Crea un objeto AggregateField que se pueda usar para calcular la suma de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta. |
function(fieldPath, ...) | |
orderBy(fieldPath, addressStr) | Crea una QueryOrderByConstraint que ordena el resultado de la consulta según el campo especificado, opcionalmente en orden descendente en lugar de ascendente.Nota: Los documentos que no contienen el campo especificado no estarán presentes en el resultado de la consulta. |
where(fieldPath, opStr, valor) | Crea una QueryFieldFilterConstraint que exige que los documentos contengan el campo especificado y que el valor debe cumplir con la restricción de relación proporcionada. |
function(fieldValues, ...) | |
endAt(fieldValues) | Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta. |
endBefore(fieldValues) | Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta. |
startAfter(fieldValues) | Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta. |
startAt(fieldValues) | Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta. |
función(izquierda, ...) | |
aggregateFieldEqual(izquierda, derecha) | Compara dos instancias de "AggregateField" en busca de igualdad. |
aggregateQuerySnapshotEqual(izquierda, derecha) | Compara dos instancias de AggregateQuerySnapshot para determinar la igualdad.Dos instancias de AggregateQuerySnapshot se consideran "iguales". si tienen consultas subyacentes que comparan datos iguales y iguales. |
queryEqual(izquierda, derecha) | Muestra true si las consultas proporcionadas apuntan a la misma colección y aplican las mismas restricciones. |
refEqual(izquierda, derecha) | Muestra true si las referencias proporcionadas son iguales. |
snapshotEqual(izquierda, derecha) | Muestra true si las instantáneas proporcionadas son iguales. |
function(limit, ...) | |
limit(limit) | Crea una QueryLimitConstraint que solo muestra los primeros documentos que coinciden. |
limitToLast(limit) | Crea una QueryLimitConstraint que solo muestra los últimos documentos que coinciden.Debes especificar al menos una cláusula orderBy para las consultas limitToLast ; de lo contrario, se arrojará una excepción durante la ejecución. |
function(logLevel, ...) | |
setLogLevel(logLevel) | Establece la verbosidad de los registros de Cloud Firestore (depuración, error o silencio). |
function(n, ...) | |
increment(n) | Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que incremente el valor actual del campo según el valor dado.Si el operando o el valor del campo actual usan la precisión de punto flotante, toda la aritmética sigue la semántica de IEEE 754. Si ambos valores son números enteros, los valores fuera del rango de números seguros de JavaScript (Number.MIN_SAFE_INTEGER a Number.MAX_SAFE_INTEGER ) también están sujetos a pérdida de precisión. Además, una vez que el backend de Firestore las procesa, todas las operaciones de números enteros se limitan entre -2^63 y 2^63-1.Si el valor actual del campo no es del tipo number , o si el campo aún no existe, la transformación configura el campo en el valor dado. |
function(query, ...) | |
getAggregate(query, aggregateSpec) | Calcula las agregaciones especificadas en los documentos del conjunto de resultados de la consulta determinada sin descargar los documentos.Es eficiente usar esta función para realizar agregaciones porque solo se trata de los valores de agregación finales, no de los documentos. se descargan los datos. Esta función puede realizar agregaciones de documentos en los casos en que el conjunto de resultados sea extremadamente grande para descargarse por completo (miles de documentos). |
getCount(consulta) | Calcula la cantidad de documentos en el conjunto de resultados de la consulta dada sin descargarlos realmente.El uso de esta función para contar los documentos es eficiente porque solo el recuento final, no los documentos ya se hayan descargado. Esta función puede contar los documentos en casos en los que el conjunto de resultados es extremadamente grande para descargarse por completo (miles de documentos). |
getDocs(query) | Ejecuta la consulta y muestra los resultados como una QuerySnapshot.El servidor ejecuta todas las consultas de forma directa, incluso si la consulta ya se ejecutó anteriormente. Las modificaciones recientes solo se reflejan en los resultados recuperados si ya las aplicó el backend. Si el cliente está sin conexión, la operación falla. Para ver el resultado almacenado previamente en caché y las modificaciones locales, usa el SDK de Firestore completo. |
query(query, compositeFilter, queryConstraints) | Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales. |
query(query, queryConstraints) | Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales. |
function(queryConstraints, ...) | |
and(queryConstraints) | Crea una QueryCompositeFilterConstraint nueva que es una conjunción de las restricciones de filtro dadas. Un filtro de conjunción incluye un documento si satisface todos los filtros dados. |
o(queryConstraints) | Crea una QueryCompositeFilterConstraint nueva que es una disyunción de las restricciones de filtro dadas. Un filtro de disyunción incluye un documento si satisface alguno de los filtros dados. |
function(reference, ...) | |
addDoc(referencia, datos) | Agrega un documento nuevo a un CollectionReference especificado con los datos dados y asígnale un ID de documento automáticamente.El resultado de esta escritura solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
collection(referencia, ruta, pathSegments) | Obtiene una instancia de CollectionReference que hace referencia a una subcolección de reference en la ruta de acceso relativa especificada. |
collection(referencia, ruta, pathSegments) | Obtiene una instancia de CollectionReference que hace referencia a una subcolección de reference en la ruta de acceso relativa especificada. |
deleteDoc(referencia) | Borra el documento al que hace referencia el DocumentReference especificado.La eliminación solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa que se muestra. Si el cliente no tiene conexión, no se puede borrar. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
doc(referencia, ruta, pathSegments) | Obtiene una instancia de DocumentReference que hace referencia a un documento dentro de reference en la ruta de acceso relativa especificada. Si no se especifica una ruta de acceso, se usará un ID único generado automáticamente para el DocumentReference que se muestra. |
doc(referencia, ruta, pathSegments) | Obtiene una instancia de DocumentReference que hace referencia a un documento dentro de reference en la ruta de acceso relativa especificada. |
getDoc(referencia) | Lee el documento al que hace referencia la referencia del documento especificado.Todos los documentos se recuperan directamente del servidor, incluso si el documento se leyó o modificó anteriormente. Las modificaciones recientes solo se reflejan en la DocumentSnapshot recuperada si ya las aplicó el backend. Si el cliente está sin conexión, la lectura falla. Si quieres usar el almacenamiento en caché o ver modificaciones locales, usa el SDK de Firestore completo. |
setDoc(referencia, datos) | Escribe en el documento al que hace referencia el DocumentReference especificado. Si el documento aún no existe, se creará.El resultado de esta escritura solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
setDoc(referencia, datos, opciones) | Escribe en el documento al que hace referencia el DocumentReference especificado. Si el documento aún no existe, se creará. Si proporcionas merge o mergeFields , los datos proporcionados se pueden combinar en un documento existente.El resultado de esta escritura solo se reflejará en las lecturas de documentos que se realicen después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
updateDoc(referencia, datos) | Actualiza los campos del documento al que hace referencia el DocumentReference especificado. La actualización fallará si se aplica a un documento que no existe.El resultado de esta actualización solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa devuelta. Si el cliente está sin conexión, la actualización falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
updateDoc(referencia, campo, valor, moreFieldsAndValues) | Actualiza los campos del documento al que hace referencia el DocumentReference especificado. La actualización fallará si se aplica a un documento que no existe.Los campos anidados se pueden actualizar proporcionando strings de rutas de campos separados por puntos o proporcionando objetos FieldPath .El resultado de esta actualización solo se reflejará en las lecturas de documentos que se realicen después de que se resuelva la promesa que se devuelve. Si el cliente está sin conexión, la actualización falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo. |
function(snapshot, ...) | |
endAt(instantánea) | Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en el documento proporcionado (inclusive). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta. |
endBefore(resumen) | Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes que el documento proporcionado (exclusivo). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta. |
startAfter(instantánea) | Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después del documento proporcionado (exclusivo). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta. |
startAt(instantánea) | Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en el documento proporcionado (inclusive). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en las orderBy de esta consulta. |
function(values, ...) | |
vectores(valores) | Crea un VectorValue nuevo construido con una copia del array de números determinado. |
Clases
Clase | Descripción |
---|---|
AggregateField | Representa una agregación que Firestore puede realizar. |
AggregateQuerySnapshot | Los resultados de la ejecución de una consulta de agregación. |
Bytes | Es un objeto inmutable que representa un array de bytes. |
CollectionReference | Se puede usar un objeto CollectionReference para agregar documentos, obtener referencias y realizar consultas de documentos (con query()). |
DocumentReference | Un DocumentReference hace referencia a la ubicación de un documento en una base de datos de Firestore y se puede usar para escribir, leer o escuchar la ubicación. El documento en la ubicación indicada puede existir o no. |
DocumentSnapshot | Un DocumentSnapshot contiene datos leídos de un documento de tu base de datos de Firestore. Los datos se pueden extraer con .data() o .get(<field>) para obtener un campo específico.En el caso de DocumentSnapshot que apunta a un documento inexistente, cualquier acceso a los datos mostrará el valor "undefined". Puedes usar el método exists() para verificar explícitamente la existencia de un documento. |
Ruta de campo | Un FieldPath hace referencia a un campo en un documento. La ruta puede consistir de un solo nombre de campo (que haga referencia a un campo de nivel superior del documento) o una lista de nombres de campo (que haga referencia a un campo anidado en el documento).Proporciona los nombres de campo para crear un FieldPath . Si se proporciona más de un nombre de campo, la ruta de acceso apuntará a un campo anidado en un documento. |
Valor de campo | Valores de Sentinel que se pueden usar cuando se escriben campos de documentos con set() o update() . |
Firestore | La interfaz del servicio de Cloud Firestore.No llames directamente a este constructor. En su lugar, usa getFirestore(). |
FirestoreError | Un error que muestra una operación de Firestore. |
GeoPoint | Un objeto inmutable que representa una ubicación geográfica en Firestore. La ubicación se representa como un par de latitud y longitud.Los valores de latitud se encuentran en el rango de [-90, 90]. Los valores de longitud se encuentran en el rango de [-180, 180]. |
Consulta | Un Query hace referencia a una consulta que puedes leer o escuchar. También puedes crear objetos Query refinados agregando filtros y ordenando. |
QueryCompositeFilterConstraint | Un QueryCompositeFilterConstraint se usa para reducir el conjunto de documentos que muestra una consulta de Firestore. Para ello, realiza el operador lógico OR o AND de varias QueryFieldFilterConstraint o QueryCompositeFilterConstraint. Las QueryCompositeFilterConstraint se crean invocando or() o and() y, luego, se pueden pasar a query() para crear una instancia de consulta nueva que también contenga el QueryCompositeFilterConstraint . |
QueryConstraint | Se usa QueryConstraint para limitar el conjunto de documentos que muestra una consulta de Firestore. Las QueryConstraint se crean invocando where(), orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit(), limitToLast() y, luego, se puede pasar a query().QueryConstraint |
QueryDocumentSnapshot | Un QueryDocumentSnapshot contiene datos leídos de un documento en tu base de datos de Firestore como parte de una consulta. Se garantiza que el documento exista y sus datos se pueden extraer con .data() o .get(<field>) para obtener un campo específico.Un QueryDocumentSnapshot ofrece la misma superficie de API que un DocumentSnapshot . Dado que los resultados de la consulta solo contienen documentos existentes, la propiedad exists siempre será verdadera y data() nunca mostrará "undefined". |
QueryEndAtConstraint | Se usa QueryEndAtConstraint para excluir documentos del final de un conjunto de resultados que muestra una consulta de Firestore. Los objetos QueryEndAtConstraint se crean invocando endAt() o endBefore() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryEndAtConstraint . |
QueryFieldFilterConstraint | Se usa QueryFieldFilterConstraint para limitar el conjunto de documentos que muestra una consulta de Firestore a través del filtrado de uno o más campos del documento. Los objetos QueryFieldFilterConstraint se crean invocando where() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryFieldFilterConstraint . |
QueryLimitConstraint | Se usa QueryLimitConstraint para limitar la cantidad de documentos que muestra una consulta de Firestore. Las QueryLimitConstraint se crean invocando limit() o limitToLast() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryLimitConstraint . |
QueryOrderByConstraint | Se usa QueryOrderByConstraint para ordenar el conjunto de documentos que muestra una consulta de Firestore. Los objetos QueryOrderByConstraint se crean mediante la invocación de orderBy() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryOrderByConstraint .Nota: Los documentos que no contienen el campo orderBy no aparecerán en el resultado de la consulta. |
QuerySnapshot | Una QuerySnapshot contiene cero o más objetos DocumentSnapshot que representan los resultados de una consulta. Se puede acceder a los documentos como un array a través de la propiedad docs o se pueden enumerar con el método forEach . La cantidad de documentos se puede determinar a través de las propiedades empty y size . |
QueryStartAtConstraint | Se usa QueryStartAtConstraint para excluir documentos del inicio de un conjunto de resultados que muestra una consulta de Firestore. Los objetos QueryStartAtConstraint se crean invocando startAt() o startAfter() y, luego, se pueden pasar a query() para crear una instancia de consulta nueva que también contenga este QueryStartAtConstraint . |
Marca de tiempo | Un Timestamp representa un punto en el tiempo independiente de cualquier zona horaria o calendario, representado como segundos y fracciones de segundos a una resolución de nanosegundos en la época UTC.Se codifica con el calendario gregoriano proléptico, que extiende el calendario gregoriano hacia atrás hasta el primer año. Se codifica mediante la suposición de que todos los minutos duran 60 segundos, es decir, los segundos bisiestos se “extienden” a fin de que no se necesite una segunda tabla bisiesta para la interpretación. El rango es de 0001-01-01T00:00:00Z a 9999-12-31T23:59:59.999999999Z.Para ver ejemplos y más especificaciones, consulta la Definición de marca de tiempo. |
Transacción | Es una referencia a una transacción.El objeto Transaction que se pasa al updateFunction de una transacción proporciona los métodos para leer y escribir datos dentro del contexto de la transacción. Consulta runTransaction(). |
VectorValue | Representa un tipo de vector en los documentos de Firestore. Crea una instancia con . VectorValue |
WriteBatch | Un lote de escrituras, que se usa para realizar varias escrituras como una sola unidad atómica.Un objeto WriteBatch se puede adquirir llamando a writeBatch(). Proporciona métodos para agregar escrituras al lote de escrituras. Ninguna de las escrituras se confirmará (ni será visible de forma local) hasta que se llame a WriteBatch.commit(). |
Interfaces
Interfaz | Descripción |
---|---|
AggregateSpec | Especifica un conjunto de agregaciones y sus alias. |
Datos de documentos | Los datos de documentos (para usar con setDoc()) consisten en campos asignados a valores. |
FirestoreDataConverter | Convertidor que usa withConverter() para transformar los objetos de usuario del tipo AppModelType en datos de Firestore de tipo DbModelType .El uso del conversor te permite especificar argumentos de tipo genérico cuando se almacenan y recuperan objetos de Firestore.En este contexto, se usa un “AppModel” es una clase que se usa en una aplicación para empaquetar información y funcionalidades relacionadas. Por ejemplo, esta clase podría tener propiedades con tipos de datos anidados complejos, propiedades usadas para la memorización, propiedades de tipos no compatibles con Firestore (como symbol y bigint ) y funciones auxiliares que realizan operaciones compuestas. Estas clases no son adecuadas o no se pueden almacenar en una base de datos de Firestore. En cambio, las instancias de esas clases deben convertirse en "objetos antiguos y simples de JavaScript". (POJO) con propiedades exclusivamente primitivas, potencialmente anidadas dentro de otros POJO o arrays de POJO. En este contexto, el tipo se denomina "DbModel". y sería un objeto adecuado para permanecer en Firestore. Para mayor comodidad, las aplicaciones pueden implementar FirestoreDataConverter y registrar el convertidor con objetos de Firestore, como DocumentReference o Query , para convertir automáticamente AppModel en DbModel cuando se almacenan en Firestore, y convertir DbModel en AppModel cuando se recuperan desde Firestore. |
Configuración | Especifica la configuración personalizada para tu instancia de Cloud Firestore. Debes configurarlos antes de invocar cualquier otro método. |
TransactionOptions | Opciones para personalizar el comportamiento de las transacciones. |
Escribe alias
Alias de tipo | Descripción |
---|---|
AddPrefixToKeys | Devuelve un mapa nuevo donde cada tecla tiene el prefijo con la tecla externa agregada a un punto. |
AggregateFieldType | La unión de todos los tipos AggregateField compatibles con Firestore. |
AggregateSpecData | Un tipo cuyas claves se toman de una AggregateSpec y cuyos valores son el resultado de la agregación realizada por el AggregateField correspondiente desde el AggregateSpec de entrada. |
AggregateType | Tipo de unión que representa el tipo de agregación que se realizará. |
ChildUpdateFields. | Ayuda para calcular los campos anidados para un tipo T1 determinado. Esto es necesario para distribuir tipos de unión como undefined | {...} (sucede con props opcionales) o {a: A} | {b: B} .En este caso de uso, V se usa para distribuir los tipos de unión de T[K] en Record , ya que T[K] se evalúa como una expresión y no se distribuye.Consulta https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types. |
FirestoreErrorCode | Es el conjunto de códigos de estado de Firestore. Los códigos son los mismos que los que expone gRPC aquí: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdValores posibles: - “cancelled”: La operación fue cancelada (por lo general, por el llamador). - “desconocido”: un error desconocido o que proviene de un dominio de errores diferente. - 'invalid-argument': El cliente especificó un argumento no válido. Ten en cuenta que esto es diferente de “con error de condición previa”. "argumento no válido" indica los argumentos que son problemáticos independientemente del estado del sistema (p.ej., un nombre de campo no válido). - "deadline-exceeded": El plazo venció antes de que la operación se pudiera completar. En el caso de las operaciones que cambian el estado del sistema, es probable que se muestre este error incluso si la operación se completó correctamente. Por ejemplo, una respuesta correcta desde un servidor podría haberse retrasado lo suficiente como para que el plazo venciera. - “not-found”: no se encontró algún documento solicitado. - 'ya existe': Algún documento que intentamos crear ya existe. - “permission-denied”: El emisor no tiene permiso para ejecutar la operación especificada. - "resource-agotado": se agotaron algunos recursos, tal vez una cuota por usuario, o tal vez se agotó el espacio de todo el sistema de archivos. - 'failed-precondition': la operación se rechazó porque el sistema no se encuentra en un estado necesario para la ejecución de la operación. - “aborted”: la operación se anuló, por lo general debido a un problema de simultaneidad, como la anulación de transacciones, entre otros. - “fuera de rango”: la operación se intentó fuera del rango válido. - "unimplemented": La operación no se ha implementado, no está habilitada o no se admite. - "internal": errores internos. Indica que algunas variantes que espera el sistema subyacente no funcionan. Si ves uno de estos errores, significa que hay un problema grave. - "no disponible": el servicio no está disponible en este momento. Lo más probable es que esta sea una condición transitoria y se pueda corregir si vuelves a intentar con una retirada. - “data-loss”: pérdida o corrupción de datos irrecuperables. - "unauthenticated": La solicitud no tiene credenciales de autenticación válidas para la operación. |
NestedUpdateFields. | Para cada campo (p.ej., 'bar'), busca todas las claves anidadas (p.ej., {'bar.baz': T1, 'bar.qux': T2}). Se pueden cruzar entre sí para crear un único mapa con todas las claves posibles marcadas como opcionales. |
OrderByDirections | La dirección de una cláusula orderBy() se especifica como "desc". o "asc" (ascendente o descendente). |
PartialWithFieldValue | Es similar a Partial<T> de TypeScript, pero permite que se omitan los campos anidados y que se pasen FieldValues como valores de propiedad. |
Primitivo | Tipos primitivos. |
QueryConstraintType | Describe las diferentes restricciones de consultas disponibles en este SDK. |
QueryFilterConstraint | QueryFilterConstraint es un tipo de unión auxiliar que representa QueryFieldFilterConstraint y QueryCompositeFilterConstraint. |
QueryNonFilterConstraint | QueryNonFilterConstraint es un tipo de unión auxiliar que representa QueryConstraints que se usa para ordenar o limitar el conjunto de documentos, pero que no filtra de forma explícita en un campo de documento. Los objetos QueryNonFilterConstraint se crean invocando orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() o limitToLast() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga QueryConstraint . |
SetOptions | Un objeto de opciones que configura el comportamiento de setDoc() y las llamadas. Estas llamadas se pueden configurar para realizar combinaciones detalladas en lugar de reemplazar los documentos de destino por completo proporcionando un SetOptions con merge: true . |
UnionToIntersection | Dado un tipo de unión U = T1 | T2 | ... , muestra un tipo con intersección (T1 & T2 & ...) .Usa tipos condicionales distributivos e inferencia de tipos condicionales. Esto funciona porque varios candidatos para la misma variable de tipo en posiciones contra variantes provocan que se infiera un tipo de intersección. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type |
UpdateData | Actualiza los datos (para usarlos con updateDoc()) que contengan rutas de campos (p.ej., "foo" o "foo.baz") asignadas a valores. Los campos que contienen puntos hacen referencia a campos anidados dentro del documento. FieldValues se pueden pasar como valores de propiedad. |
WhereFilterOp | Las condiciones del filtro en una cláusula where() se especifican con las cadenas “<', '<=', '==', '!=', '>=', '>', 'array-contains', 'in', 'array-contains-any' y 'not-in'. |
WithFieldValue | Permite que se pasen FieldValues como un valor de propiedad mientras se mantiene la seguridad de tipo. |
función(app, ...)
getFirestore(aplicación)
Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
Firma:
export declare function getFirestore(app: FirebaseApp): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
app | App de Firebase | La instancia de FirebaseApp con la que está asociada la instancia de Firestore que se muestra. |
Muestra:
La instancia de Firestore de la app proporcionada.
getFirestore(app, databaseId)
Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.
Muestra la instancia de Firestore existente que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
Firma:
export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
app | App de Firebase | La instancia de FirebaseApp con la que está asociada la instancia de Firestore que se muestra. |
IDdebasededatos | string | Es el nombre de la base de datos. |
Muestra:
La instancia de Firestore de la app proporcionada.
inicializaFirestore(app, configuración)
Inicializa una instancia nueva de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que a cualquier otra función, incluida getFirestore(). Si los parámetros de configuración personalizados están vacíos, esta función equivale a llamar a getFirestore().
Firma:
export declare function initializeFirestore(app: FirebaseApp, settings: Settings): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
app | App de Firebase | La FirebaseApp con la que se asociará la instancia Firestore . |
configuración | Configuración | Un objeto de configuración para configurar la instancia Firestore |
Muestra:
Una instancia de Firestore
recién inicializada
inicializaFirestore(app, configuración, databaseId)
Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.
Inicializa una instancia nueva de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que a cualquier otra función, incluida getFirestore(). Si los parámetros de configuración personalizados están vacíos, esta función equivale a llamar a getFirestore().
Firma:
export declare function initializeFirestore(app: FirebaseApp, settings: Settings, databaseId?: string): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
app | App de Firebase | La FirebaseApp con la que se asociará la instancia Firestore . |
configuración | Configuración | Un objeto de configuración para configurar la instancia Firestore |
IDdebasededatos | string | Es el nombre de la base de datos. |
Muestra:
Una instancia de Firestore
recién inicializada
function(firestore, ...)
collection(firestore, path, pathSegments)
Obtiene una instancia de CollectionReference
que hace referencia a la colección en la ruta de acceso absoluta especificada.
Firma:
export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore | Una referencia a la instancia raíz Firestore . |
ruta | string | Es una ruta separada por barras a una colección. |
Segmentosderuta | string[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Muestra:
CollectionReference<DocumentData y DocumentData>
La instancia CollectionReference
Excepciones
Si la ruta final tiene una cantidad par de segmentos y no apunta a una colección.
collectionGroup(firestore, collectionId)
Crea y muestra una nueva instancia de Query
que incluye todos los documentos de la base de datos que se encuentran en una colección o subcolección con el collectionId
especificado.
Firma:
export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore | Una referencia a la instancia raíz Firestore . |
ID de colección | string | Identifica las colecciones que se consultarán. Se incluirán todas las colecciones o subcolecciones que tengan este ID como último segmento de su ruta de acceso. No puede contener una barra. |
Muestra:
Consulta<DocumentData, DocumentData>
El Query
creado.
connectFirestoreEmulator(firestore, host, port, opciones)
Modifica esta instancia para que se comunique con el emulador de Cloud Firestore.
Firma:
export declare function connectFirestoreEmulator(firestore: Firestore, host: string, port: number, options?: {
mockUserToken?: EmulatorMockTokenOptions | string;
}): void;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore | Es la instancia Firestore que se debe configurar para conectarse al emulador. |
host | string | el host del emulador (p. ej., localhost). |
puerto | número | el puerto del emulador (p. ej., 9000). |
opciones | { falsoUserToken?: EmulatorMockTokenOptions | cadena; }. |
Muestra:
void
doc(firestore, path, pathSegments)
Obtiene una instancia de DocumentReference
que hace referencia al documento en la ruta de acceso absoluta especificada.
Firma:
export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore | Una referencia a la instancia raíz Firestore . |
ruta | string | Es una ruta de acceso separada por barras a un documento. |
Segmentosderuta | string[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Muestra:
DocumentReference<DocumentData y DocumentData>
La instancia DocumentReference
Excepciones
Si la ruta final tiene un número impar de segmentos y no dirige a un documento.
runTransaction(firestore, updateFunction, opciones)
Ejecuta el updateFunction
determinado y, luego, intenta confirmar los cambios aplicados dentro de la transacción. Si se modificó algún documento leído en la transacción, Cloud Firestore vuelve a intentar ejecutar updateFunction
. Si no se confirma después de 5 intentos, la transacción falla.
La cantidad máxima de operaciones de escritura permitidas en una sola transacción es 500.
Firma:
export declare function runTransaction<T>(firestore: Firestore, updateFunction: (transaction: Transaction) => Promise<T>, options?: TransactionOptions): Promise<T>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore | Una referencia a la base de datos de Firestore con la que se ejecutará esta transacción. |
Función update | (transacción: Transacción) => Promesa<T> | La función que se ejecutará dentro del contexto de la transacción. |
opciones | TransactionOptions | Un objeto de opciones para configurar la cantidad máxima de intentos de confirmación. |
Muestra:
Promesa<T>
Si la transacción se completó correctamente o se anuló de forma explícita (la updateFunction
mostró una promesa con errores), la promesa que mostró updateFunction
se muestra aquí. De lo contrario, si la transacción falló, se muestra una promesa rechazada con el error de falla correspondiente.
terminar(firestore)
Finaliza la instancia Firestore
proporcionada.
Después de llamar a terminate()
, solo se podrán usar las funciones clearIndexedDbPersistence()
. Cualquier otra función arrojará una FirestoreError
. La rescisión no cancela las escrituras pendientes, y no se resolverá ninguna promesa que esté a la espera de una respuesta del servidor.
Para reiniciar después de la finalización, crea una instancia nueva de Firestore
con getFirestore().
Firma:
export declare function terminate(firestore: Firestore): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore | La instancia Firestore que se finalizará. |
Muestra:
Promesa<void>
Una Promise
que se resuelve cuando la instancia se finaliza de forma correcta.
writeBatch(firestore)
Crea un lote de escrituras, que se usa para realizar múltiples escrituras como una sola operación atómica. La cantidad máxima de escrituras permitidas en un solo WriteBatch es de 500.
El resultado de estas escrituras solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function writeBatch(firestore: Firestore): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
firestore | Firestore |
Muestra:
Un WriteBatch
que se puede usar para ejecutar de forma atómica varias escrituras.
función()
count()
Crea un objeto AggregateField que se pueda usar para calcular el recuento de documentos en el conjunto de resultados de una consulta.
Firma:
export declare function count(): AggregateField<number>;
Muestra:
AggregateField<número>
deleteField()
Muestra un centinela para usar con updateDoc() o setDoc() con {merge: true}
a fin de marcar un campo para su eliminación.
Firma:
export declare function deleteField(): FieldValue;
Muestra:
IDdedocumento()
Devuelve un centinela especial FieldPath
para hacer referencia al ID de un documento. Se puede usar en consultas para ordenar o filtrar por el ID de documento.
Firma:
export declare function documentId(): FieldPath;
Muestra:
getFirestore()
Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
Firma:
export declare function getFirestore(): Firestore;
Muestra:
La instancia de Firestore de la app proporcionada.
serverTimestamp()
Muestra un centinela usado con setDoc() o updateDoc() para incluir una marca de tiempo generada por el servidor en los datos escritos.
Firma:
export declare function serverTimestamp(): FieldValue;
Muestra:
función(IDdebase_de_datos, ...)
getFirestore(databaseId)
Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.
Muestra la instancia de Firestore existente que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
Firma:
export declare function getFirestore(databaseId: string): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
IDdebasededatos | string | Es el nombre de la base de datos. |
Muestra:
La instancia de Firestore de la app proporcionada.
función(elementos, ...)
arrayRemove(elementos)
Muestra un valor especial que se puede usar con setDoc() o que le indica al servidor que quite los elementos especificados de cualquier valor de array que ya exista en el servidor. Todas las instancias de cada elemento especificado se quitarán del array. Si el campo que se modifica aún no es un array, se reemplazará por uno vacío.
Firma:
export declare function arrayRemove(...elements: unknown[]): FieldValue;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
elementos | desconocido | Los elementos que se quitarán del array. |
Muestra:
El centinela FieldValue
para usar en una llamada a setDoc()
o updateDoc()
arrayUnion(elementos)
Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que una los elementos dados con cualquier valor de array que ya exista en el servidor. Cada elemento especificado que aún no existe en el array se agregará al final. Si el campo que se modifica aún no es un array, se reemplazará por uno que contenga exactamente los elementos especificados.
Firma:
export declare function arrayUnion(...elements: unknown[]): FieldValue;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
elementos | desconocido | Elementos que se unirán al array. |
Muestra:
El centinela FieldValue
para usar en una llamada a setDoc()
o updateDoc()
.
función(campo, ...)
promedio(campo)
Crea un objeto AggregateField que se pueda usar para calcular el promedio de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta.
Firma:
export declare function average(field: string | FieldPath): AggregateField<number | null>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
campo | cadena | Ruta de campo | Especifica el campo que se debe promediar en el conjunto de resultados. |
Muestra:
AggregateField<número | null>
suma(campo)
Crea un objeto AggregateField que se pueda usar para calcular la suma de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta.
Firma:
export declare function sum(field: string | FieldPath): AggregateField<number>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
campo | cadena | Ruta de campo | Especifica el campo que se debe sumar en el conjunto de resultados. |
Muestra:
AggregateField<número>
función(fieldPath, ...)
orderBy(fieldPath, addressStr)
Crea una QueryOrderByConstraint que ordena el resultado de la consulta según el campo especificado, opcionalmente en orden descendente en lugar de ascendente.
Firma:
export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
fieldPath | cadena | Ruta de campo | El campo según el cual se va a ordenar. |
direcciónStr | OrderByDirections | Indicación opcional para ordenar ("asc" o "desc"). Si no se especifica, el orden será ascendente. |
Muestra:
La QueryOrderByConstraint creada.
donde(fieldPath, opStr, valor)
Crea una QueryFieldFilterConstraint que exige que los documentos contengan el campo especificado y que el valor debe cumplir con la restricción de relación proporcionada.
Firma:
export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
fieldPath | cadena | Ruta de campo | La ruta para comparar |
Ruta de trabajo | WhereFilterOp | La cadena de la operación (p. ej., "<", "<=", "==", "<", "<=", "!="). |
valor | desconocido | El valor de la comparación |
Muestra:
La QueryFieldFilterConstraint creada.
función(Valoresdecampo, ...)
endAt(fieldValues)
Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
Firma:
export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
Valores de campo | desconocido | Los valores de campo en los que se terminará esta consulta, en el orden de la consulta. |
Muestra:
Una QueryEndAtConstraint para pasar a query()
endBefore(fieldValues)
Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
Firma:
export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
Valores de campo | desconocido | Los valores de los campos en los que se finalizará esta consulta antes, en el orden de la consulta. |
Muestra:
Una QueryEndAtConstraint para pasar a query()
startAfter(fieldValues)
Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
Firma:
export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
Valores de campo | desconocido | Los valores de campo después de comenzar esta consulta, en el orden de la consulta. |
Muestra:
Una QueryStartAtConstraint para pasar a query()
iniciarEn(Valoresdecampo)
Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
Firma:
export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
Valores de campo | desconocido | Los valores de los campos en los que se debe iniciar esta consulta, en el orden de la consulta. |
Muestra:
Una QueryStartAtConstraint para pasar a query()
.
función(izquierda, ...)
addFieldEqual(izquierda, derecha)
Compara dos instancias de "AggregateField" en busca de igualdad.
Firma:
export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
izquierda | AggregateField<desconocido> | Compara este AggregateField con right . |
derecha | AggregateField<desconocido> | Compara este AggregateField con left . |
Muestra:
booleano
addQuerySnapshotEqual(izquierda, derecha)
Compara dos instancias de AggregateQuerySnapshot
para determinar la igualdad.
Dos instancias de AggregateQuerySnapshot
se consideran "iguales". si tienen consultas subyacentes que comparan datos iguales y iguales.
Firma:
export declare function aggregateQuerySnapshotEqual<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(left: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>, right: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>): boolean;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
izquierda | AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType> | El primer AggregateQuerySnapshot que se va a comparar. |
derecha | AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType> | El segundo AggregateQuerySnapshot que se va a comparar. |
Muestra:
booleano
true
si los objetos son "iguales", como se definió anteriormente, o false
en caso contrario.
queryEqual(izquierda, derecha)
Muestra true si las consultas proporcionadas apuntan a la misma colección y aplican las mismas restricciones.
Firma:
export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
izquierda | Consulta<AppModelType, DrModelType> | Un Query para comparar |
derecha | Consulta<AppModelType, DrModelType> | Un Query para comparar |
Muestra:
booleano
true si las referencias apuntan a la misma ubicación en la misma base de datos de Firestore.
refEqual(izquierda, derecha)
Muestra true si las referencias proporcionadas son iguales.
Firma:
export declare function refEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>, right: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>): boolean;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
izquierda | DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DrModelType> | Una referencia para comparar. |
derecha | DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DrModelType> | Una referencia para comparar. |
Muestra:
booleano
true si las referencias apuntan a la misma ubicación en la misma base de datos de Firestore.
instantáneaEqual(izquierda, derecha)
Muestra true si las instantáneas proporcionadas son iguales.
Firma:
export declare function snapshotEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>, right: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>): boolean;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
izquierda | DocumentSnapshot<AppModelType, DrModelType> | QuerySnapshot<AppModelType, DrModelType> | Una instantánea para comparar |
derecha | DocumentSnapshot<AppModelType, DrModelType> | QuerySnapshot<AppModelType, DrModelType> | Una instantánea para comparar |
Muestra:
booleano
true si las instantáneas son iguales.
función(límite, ...)
límite(límite)
Crea una QueryLimitConstraint que solo muestra los primeros documentos que coinciden.
Firma:
export declare function limit(limit: number): QueryLimitConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
límite | número | La cantidad máxima de elementos que se mostrarán. |
Muestra:
La QueryLimitConstraint creada.
limitToLast(límite)
Crea una QueryLimitConstraint que solo muestra los últimos documentos que coinciden.
Debes especificar al menos una cláusula orderBy
para las consultas limitToLast
; de lo contrario, se arrojará una excepción durante la ejecución.
Firma:
export declare function limitToLast(limit: number): QueryLimitConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
límite | número | La cantidad máxima de elementos que se mostrarán. |
Muestra:
La QueryLimitConstraint creada.
función(logLevel, ...)
setLogLevel(logLevel)
Establece la verbosidad de los registros de Cloud Firestore (depuración, error o silencio).
Firma:
export declare function setLogLevel(logLevel: LogLevel): void;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
logLevel | LogLevel | La verbosidad que estableces para los registros de actividad y errores. Puede ser cualquiera de los siguientes valores:
|
Muestra:
void
función(n, ...)
incremento(n)
Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que incremente el valor actual del campo según el valor especificado.
Si el operando o el valor de campo actual usan la precisión de punto flotante, toda la aritmética sigue la semántica de IEEE 754. Si ambos valores son números enteros, los valores fuera del rango de números seguros de JavaScript (Number.MIN_SAFE_INTEGER
a Number.MAX_SAFE_INTEGER
) también están sujetos a pérdida de precisión. Además, una vez que el backend de Firestore las procesa, todas las operaciones de números enteros se limitan entre -2^63 y 2^63-1.
Si el valor actual del campo no es del tipo number
, o si el campo aún no existe, la transformación establece el campo en el valor dado.
Firma:
export declare function increment(n: number): FieldValue;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
n | número | Valor que se va a incrementar |
Muestra:
El centinela FieldValue
para usar en una llamada a setDoc()
o updateDoc()
función(consulta, ...)
getAggregate(consulta, aggregateSpec)
Calcula las agregaciones especificadas en los documentos del conjunto de resultados de la consulta dada sin descargarlos.
Usar esta función para realizar agregaciones es eficiente porque solo se trata de los valores de agregación finales, no de los valores de se descargan los datos. Esta función puede realizar agregaciones de documentos en los casos en que el conjunto de resultados sea extremadamente grande para descargarse por completo (miles de documentos).
Firma:
export declare function getAggregate<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, aggregateSpec: AggregateSpecType): Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
consulta | Consulta<AppModelType, DrModelType> | La consulta cuyo conjunto de resultados se agrega. |
Agrega Spec. | Tipo de AggregateSpec | Un objeto AggregateSpec que especifique los agregados que se realizarán sobre el conjunto de resultados. AggregateSpec especifica los alias de cada agregado, que se pueden usar a fin de recuperar el resultado agregado. |
Muestra:
Promesa<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType>>
Ejemplo
const aggregateSnapshot = await getAggregate(query, {
countOfDocs: count(),
totalHours: sum('hours'),
averageScore: average('score')
});
const countOfDocs: number = aggregateSnapshot.data().countOfDocs;
const totalHours: number = aggregateSnapshot.data().totalHours;
const averageScore: number | null = aggregateSnapshot.data().averageScore;
getCount(consulta)
Calcula el número de documentos en el conjunto de resultados de la consulta dada sin descargarlos realmente.
El uso de esta función para contar los documentos es eficiente porque solo el recuento final, no el de los documentos ya se hayan descargado. Esta función puede contar los documentos en casos en los que el conjunto de resultados es extremadamente grande para descargarse por completo (miles de documentos).
Firma:
export declare function getCount<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<AggregateQuerySnapshot<{
count: AggregateField<number>;
}, AppModelType, DbModelType>>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
consulta | Consulta<AppModelType, DrModelType> | La consulta para la cual se calcula el tamaño del conjunto de resultados. |
Muestra:
Promesa<AggregateQuerySnapshot<{ count: AggregateField<number>; }, AppModelType, DrModelType>>.
Una promesa que se resolverá con el recuento el recuento se puede recuperar a partir de snapshot.data().count
, donde snapshot
es el AggregateQuerySnapshot
en el que se resuelve la promesa que se muestra.
getDocs(consulta)
Ejecuta la consulta y muestra los resultados como una QuerySnapshot.
El servidor ejecuta todas las consultas directamente, incluso si la consulta se ejecutó anteriormente. Las modificaciones recientes solo se reflejan en los resultados recuperados si ya las aplicó el backend. Si el cliente está sin conexión, la operación falla. Para ver el resultado almacenado previamente en caché y las modificaciones locales, usa el SDK de Firestore completo.
Firma:
export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
consulta | Consulta<AppModelType, DrModelType> | El Query que se ejecutará. |
Muestra:
Promesa<QuerySnapshot<AppModelType, DrModelType>>
Una promesa que se resolverá con los resultados de la consulta.
query(query, compositeFilter, queryConstraints)
Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales.
Firma:
export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
consulta | Consulta<AppModelType, DrModelType> | La instancia Query que se usará como base para las restricciones nuevas. |
Filtro compuesto | QueryCompositeFilterConstraint | La QueryCompositeFilterConstraint que se debe aplicar. Crea QueryCompositeFilterConstraint con and() o or(). |
queryConstraints | QueryNonFilterConstraint[] | QueryNonFilterConstraint adicionales que se aplicarán (p.ej., orderBy(), limit()). |
Muestra:
Consulta<AppModelType, DrModelType>
Excepciones
si alguna de las restricciones de consulta proporcionadas no se puede combinar con las restricciones existentes o nuevas.
query(query, queryConstraints)
Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales.
Firma:
export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
consulta | Consulta<AppModelType, DrModelType> | La instancia Query que se usará como base para las restricciones nuevas. |
queryConstraints | QueryConstraint[] | La lista de QueryConstraint que se debe aplicar. |
Muestra:
Consulta<AppModelType, DrModelType>
Excepciones
si alguna de las restricciones de consulta proporcionadas no se puede combinar con las restricciones existentes o nuevas.
función(queryConstraints, ...)
y(queryConstraints)
Crea una QueryCompositeFilterConstraint nueva que es una conjunción de las restricciones de filtro dadas. Un filtro de conjunción incluye un documento si satisface todos los filtros dados.
Firma:
export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
queryConstraints | QueryFilterConstraint[] | Opcional. La lista de QueryFilterConstraint para las que se realiza una conjunción. Estos deben crearse con llamadas a where(), or() o and(). |
Muestra:
QueryCompositeFilterConstraint
La QueryCompositeFilterConstraint recién creada.
o(queryConstraints)
Crea una QueryCompositeFilterConstraint nueva que es una disyunción de las restricciones de filtro dadas. Un filtro de disyunción incluye un documento si satisface alguno de los filtros dados.
Firma:
export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
queryConstraints | QueryFilterConstraint[] | Opcional. La lista de QueryFilterConstraint para realizar una disyunción. Estos deben crearse con llamadas a where(), or() o and(). |
Muestra:
QueryCompositeFilterConstraint
La QueryCompositeFilterConstraint recién creada.
función(referencia, ...)
addDoc(referencia, datos)
Agrega un documento nuevo a un CollectionReference
especificado con los datos proporcionados y asígnale un ID de documento automáticamente.
El resultado de esta escritura solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | CollectionReference<AppModelType, DrModelType> | Es una referencia a la colección a la que se agregará el documento. |
datos | WithFieldValue<AppModelType> | Es un objeto que contiene los datos del documento nuevo. |
Muestra:
Promesa<DocumentReference<AppModelType, DrModelType>>
Una Promise
se resuelve con un DocumentReference
que apunta al documento recién creado después de que se escribió en el backend.
Excepciones
Error: Si la entrada proporcionada no es un documento de Firestore válido.
collection(reference, path, pathSegments)
Obtiene una instancia de CollectionReference
que hace referencia a una subcolección de reference
en la ruta de acceso relativa especificada.
Firma:
export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | CollectionReference<AppModelType, DrModelType> | Es una referencia a una colección. |
ruta | string | Es una ruta separada por barras a una colección. |
Segmentosderuta | string[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Muestra:
CollectionReference<DocumentData y DocumentData>
La instancia CollectionReference
Excepciones
Si la ruta final tiene una cantidad par de segmentos y no apunta a una colección.
collection(reference, path, pathSegments)
Obtiene una instancia de CollectionReference
que hace referencia a una subcolección de reference
en la ruta de acceso relativa especificada.
Firma:
export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Una referencia a un documento de Firestore. |
ruta | string | Es una ruta separada por barras a una colección. |
Segmentosderuta | string[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Muestra:
CollectionReference<DocumentData y DocumentData>
La instancia CollectionReference
Excepciones
Si la ruta final tiene una cantidad par de segmentos y no apunta a una colección.
deleteDoc(referencia)
Borra el documento al que hace referencia el DocumentReference
especificado.
La eliminación solo se reflejará en las lecturas de documentos que ocurran después de que se resuelva la promesa que se muestra. Si el cliente no tiene conexión, no se puede borrar. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Es una referencia al documento que se borrará. |
Muestra:
Promesa<void>
Una vez que se borró correctamente el documento del backend, se resuelve un Promise
.
doc(referencia, ruta, pathSegments)
Obtiene una instancia de DocumentReference
que hace referencia a un documento dentro de reference
en la ruta de acceso relativa especificada. Si no se especifica ninguna ruta, se usará un ID único generado automáticamente para el DocumentReference
que se muestra.
Firma:
export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | CollectionReference<AppModelType, DrModelType> | Es una referencia a una colección. |
ruta | string | Es una ruta de acceso separada por barras a un documento. Se debe omitir para usar IDs generados automáticamente. |
Segmentosderuta | string[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Muestra:
DocumentReference<AppModelType, DbModelType>
La instancia DocumentReference
Excepciones
Si la ruta final tiene un número impar de segmentos y no dirige a un documento.
doc(referencia, ruta, pathSegments)
Obtiene una instancia de DocumentReference
que hace referencia a un documento dentro de reference
en la ruta de acceso relativa especificada.
Firma:
export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Una referencia a un documento de Firestore. |
ruta | string | Es una ruta de acceso separada por barras a un documento. |
Segmentosderuta | string[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Muestra:
DocumentReference<DocumentData y DocumentData>
La instancia DocumentReference
Excepciones
Si la ruta final tiene un número impar de segmentos y no dirige a un documento.
getDoc(referencia)
Lee el documento al que hace referencia la referencia del documento especificado.
Todos los documentos se recuperan directamente del servidor, incluso si el documento se leyó o modificó anteriormente. Las modificaciones recientes solo se reflejan en la DocumentSnapshot
recuperada si ya las aplicó el backend. Si el cliente está sin conexión, la lectura falla. Si quieres usar el almacenamiento en caché o ver modificaciones locales, usa el SDK de Firestore completo.
Firma:
export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | La referencia del documento que se recuperará. |
Muestra:
Promesa<DocumentSnapshot<AppModelType, DrModelType>>
Se resuelve una promesa con una DocumentSnapshot
que incluye el contenido del documento actual.
setDoc(referencia, datos)
Escribe en el documento al que hace referencia el DocumentReference
especificado. Si el documento aún no existe, se creará.
El resultado de esta escritura solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Es una referencia al documento que se debe escribir. |
datos | WithFieldValue<AppModelType> | Un mapa de los campos y valores del documento. |
Muestra:
Promesa<void>
Se resuelve un Promise
una vez que los datos se escribieron de forma correcta en el backend.
Excepciones
Error: Si la entrada proporcionada no es un documento de Firestore válido.
setDoc(referencia, datos, opciones)
Escribe en el documento al que hace referencia el DocumentReference
especificado. Si el documento aún no existe, se creará. Si proporcionas merge
o mergeFields
, los datos proporcionados se pueden combinar en un documento existente.
El resultado de esta escritura solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la escritura falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Es una referencia al documento que se debe escribir. |
datos | PartialWithFieldValue<AppModelType> | Un mapa de los campos y valores del documento. |
opciones | SetOptions | Un objeto para configurar el comportamiento establecido. |
Muestra:
Promesa<void>
Se resuelve un Promise
una vez que los datos se escribieron de forma correcta en el backend.
Excepciones
Error: Si la entrada proporcionada no es un documento de Firestore válido.
updateDoc(referencia, datos)
Actualiza los campos del documento a los que hace referencia el DocumentReference
especificado. La actualización fallará si se aplica a un documento que no existe.
El resultado de esta actualización solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la actualización falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Es una referencia al documento que se actualizará. |
datos | UpdateData<DbModelType> | Un objeto que contiene los campos y valores con los que se actualiza el documento. Los campos pueden contener puntos que hagan referencia a campos anidados dentro del documento. |
Muestra:
Promesa<void>
Se resuelve un Promise
una vez que los datos se escribieron de forma correcta en el backend.
Excepciones
Error: Si la entrada proporcionada no son datos de Firestore válidos.
updateDoc(referencia, campo, valor, moreFieldsAndValues)
Actualiza los campos del documento al que hace referencia el DocumentReference
especificado. La actualización fallará si se aplica a un documento que no existe.
Los campos anidados se pueden actualizar proporcionando strings de rutas de campos separadas por puntos o con objetos FieldPath
.
El resultado de esta actualización solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa que se muestra. Si el cliente está sin conexión, la actualización falla. Si quieres ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, usa el SDK de Firestore completo.
Firma:
export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | DocumentReference<AppModelType, DbModelType> | Es una referencia al documento que se actualizará. |
campo | cadena | Ruta de campo | El primer campo que se actualizará. |
valor | desconocido | El primer valor. |
MásCamposYValores | desconocido | Pares clave-valor adicionales. |
Muestra:
Promesa<void>
Se resuelve un Promise
una vez que los datos se escribieron de forma correcta en el backend.
Excepciones
Error: Si la entrada proporcionada no son datos de Firestore válidos.
función(instantánea, ...)
endAt(instantánea)
Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en el documento proporcionado (inclusive). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.
Firma:
export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
instantánea | DocumentSnapshot<AppModelType, DrModelType> | La instantánea del documento en el que se terminará. |
Muestra:
Una QueryEndAtConstraint para pasar a query()
endBefore(instantánea)
Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes que el documento proporcionado (exclusivo). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.
Firma:
export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
instantánea | DocumentSnapshot<AppModelType, DrModelType> | La instantánea del documento que finalizará antes. |
Muestra:
Una QueryEndAtConstraint para pasar a query()
startAfter(instantánea)
Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después del documento proporcionado (exclusivo). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.
Firma:
export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
instantánea | DocumentSnapshot<AppModelType, DrModelType> | La instantánea del documento que comienza después. |
Muestra:
Una QueryStartAtConstraint para pasar a query()
startAt(instantánea)
Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en el documento proporcionado (inclusive). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en las orderBy
de esta consulta.
Firma:
export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
instantánea | DocumentSnapshot<AppModelType, DrModelType> | La instantánea del documento en el que se va a comenzar. |
Muestra:
Una QueryStartAtConstraint para pasar a query()
.
función(valores, ...)
vector(valores)
Crea un VectorValue
nuevo construido con una copia del array de números determinado.
Firma:
export declare function vector(values?: number[]): VectorValue;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
valores | número | Crea una instancia de VectorValue con una copia de este array de números. |
Muestra:
Un VectorValue
nuevo construido con una copia del array de números determinado.
AñadirPrefixToKeys
Devuelve un mapa nuevo donde cada tecla tiene el prefijo con la tecla externa agregada a un punto.
Firma:
export declare type AddPrefixToKeys<Prefix extends string, T extends Record<string, unknown>> = {
[K in keyof T & string as `${Prefix}.${K}`]+?: string extends K ? any : T[K];
};
Tipo de campo agregado
La unión de todos los tipos AggregateField
compatibles con Firestore.
Firma:
export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;
AggregateSpecData
Un tipo cuyas claves se toman de un AggregateSpec
y cuyos valores son el resultado de la agregación que realiza el AggregateField
correspondiente del AggregateSpec
de entrada.
Firma:
export declare type AggregateSpecData<T extends AggregateSpec> = {
[P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};
Tipo de agregación
Tipo de unión que representa el tipo de agregación que se realizará.
Firma:
export declare type AggregateType = 'count' | 'avg' | 'sum';
Camposdeactualizaciónsecundarios
Ayuda para calcular los campos anidados para un tipo T1 determinado. Esto es necesario para distribuir tipos de unión como undefined | {...}
(sucede con props opcionales) o {a: A} | {b: B}
.
En este caso de uso, se usa V
para distribuir los tipos de unión de T[K]
en Record
, ya que T[K]
se evalúa como una expresión y no se distribuye.
Consultar https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types
Firma:
export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;
FirestoreErrorCode
Es el conjunto de códigos de estado de Firestore. Los códigos son los mismos que los que expone gRPC aquí: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md
Valores posibles: - "cancelled": La operación se canceló (por lo general, la cancela el emisor). - “desconocido”: un error desconocido o que proviene de un dominio de errores diferente. - 'invalid-argument': El cliente especificó un argumento no válido. Ten en cuenta que esto es diferente de “con error de condición previa”. "argumento no válido" indica los argumentos que son problemáticos independientemente del estado del sistema (p.ej., un nombre de campo no válido). - "deadline-exceeded": El plazo venció antes de que la operación se pudiera completar. En el caso de las operaciones que cambian el estado del sistema, es probable que se muestre este error incluso si la operación se completó correctamente. Por ejemplo, una respuesta correcta desde un servidor podría haberse retrasado lo suficiente como para que el plazo venciera. - “not-found”: no se encontró algún documento solicitado. - 'ya existe': Algún documento que intentamos crear ya existe. - “permission-denied”: El emisor no tiene permiso para ejecutar la operación especificada. - "resource-agotado": se agotaron algunos recursos, tal vez una cuota por usuario, o tal vez se agotó el espacio de todo el sistema de archivos. - 'failed-precondition': la operación se rechazó porque el sistema no se encuentra en un estado necesario para la ejecución de la operación. - “aborted”: la operación se anuló, por lo general debido a un problema de simultaneidad, como la anulación de transacciones, entre otros. - “fuera de rango”: la operación se intentó fuera del rango válido. - "unimplemented": La operación no se ha implementado, no está habilitada o no se admite. - "internal": errores internos. Indica que algunas variantes que espera el sistema subyacente no funcionan. Si ves uno de estos errores, significa que hay un problema grave. - "no disponible": el servicio no está disponible en este momento. Lo más probable es que esta sea una condición transitoria y se pueda corregir si vuelves a intentar con una retirada. - “data-loss”: pérdida o corrupción de datos irrecuperables. - "unauthenticated": La solicitud no tiene credenciales de autenticación válidas para la operación.
Firma:
export declare type FirestoreErrorCode = 'cancelled' | 'unknown' | 'invalid-argument' | 'deadline-exceeded' | 'not-found' | 'already-exists' | 'permission-denied' | 'resource-exhausted' | 'failed-precondition' | 'aborted' | 'out-of-range' | 'unimplemented' | 'internal' | 'unavailable' | 'data-loss' | 'unauthenticated';
NestedUpdateFields
Para cada campo (p.ej., 'bar'), busca todas las claves anidadas (p.ej., {'bar.baz': T1, 'bar.qux': T2}). Se pueden cruzar entre sí para crear un único mapa con todas las claves posibles marcadas como opcionales.
Firma:
export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
[K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;
Orden por dirección
La dirección de una cláusula orderBy() se especifica como "desc". o "asc" (ascendente o descendente).
Firma:
export declare type OrderByDirection = 'desc' | 'asc';
Parcialconvalordelcampo
Es similar a Partial<T>
de TypeScript, pero permite que se omitan los campos anidados y que se pasen FieldValues como valores de propiedad.
Firma:
export declare type PartialWithFieldValue<T> = Partial<T> | (T extends Primitive ? T : T extends {} ? {
[K in keyof T]?: PartialWithFieldValue<T[K]> | FieldValue;
} : never);
Básico
Tipos primitivos.
Firma:
export declare type Primitive = string | number | boolean | undefined | null;
Tipo de restricción de consultas
Describe las diferentes restricciones de consultas disponibles en este SDK.
Firma:
export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';
QueryFilterConstraint
QueryFilterConstraint
es un tipo de unión auxiliar que representa QueryFieldFilterConstraint y QueryCompositeFilterConstraint.
Firma:
export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;
QueryNonFilterConstraint
QueryNonFilterConstraint
es un tipo de unión auxiliar que representa QueryConstraints que se usa para ordenar o limitar el conjunto de documentos, pero que no filtra de forma explícita en un campo de documento. QueryNonFilterConstraint
Los elementos se crean invocando orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() o limitToLast() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga la QueryConstraint
.
Firma:
export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;
SetOptions
Un objeto de opciones que configura el comportamiento de setDoc() y las llamadas. Estas llamadas se pueden configurar para realizar combinaciones detalladas en lugar de reemplazar los documentos de destino por completo proporcionando un SetOptions
con merge: true
.
Firma:
export declare type SetOptions = {
readonly merge?: boolean;
} | {
readonly mergeFields?: Array<string | FieldPath>;
};
Unión aIntersección
Con un tipo de unión U = T1 | T2 | ...
, muestra un tipo de unión (T1 & T2 & ...)
con intersección.
Usa tipos condicionales distributivos e inferencia a partir de tipos condicionales. Esto funciona porque varios candidatos para la misma variable de tipo en posiciones contra variantes provocan que se infiera un tipo de intersección. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type
Firma:
export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
UpdateData
Actualiza los datos (para usarlos con updateDoc()) que contengan rutas de campos (p.ej., "foo" o "foo.baz") asignadas a valores. Los campos que contienen puntos hacen referencia a campos anidados dentro del documento. FieldValues se pueden pasar como valores de propiedad.
Firma:
export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
[K in keyof T]?: UpdateData<T[K]> | FieldValue;
} & NestedUpdateFields<T> : Partial<T>;
DondeFilterOp
Las condiciones del filtro en una cláusula where() se especifican con las cadenas “<', '<=', '==', '!=', '>=', '>', 'array-contains', 'in', 'array-contains-any' y 'not-in'.
Firma:
export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';
WithFieldValue
Permite que se pasen FieldValues como un valor de propiedad mientras se mantiene la seguridad de tipo.
Firma:
export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
[K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);