Funciones
Función | Descripción |
---|---|
función (aplicación, ...) | |
getFirestore (aplicación) | Devuelve la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp proporcionada. . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada. |
getFirestore(aplicación, ID de base de datos) | (BETA) Devuelve la instancia de Firestore existente que está asociada con la FirebaseApp proporcionada . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada. |
inicializarFirestore(aplicación, configuración) | Inicializa una nueva instancia de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que cualquier otra función, incluida getFirestore() . Si la configuración personalizada está vacía, esta función equivale a llamar a getFirestore() . |
inicializarFirestore(aplicación, configuración, ID de base de datos) | (BETA) Inicializa una nueva instancia de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que cualquier otra función, incluida getFirestore() . Si la configuración personalizada está vacía, esta función equivale a llamar a getFirestore() . |
función(firestore, ...) | |
colección (firestore, ruta, segmentos de ruta) | Obtiene una instancia CollectionReference que hace referencia a la colección en la ruta absoluta especificada. |
grupo de colección (firestore, ID de colección) | Crea y devuelve una nueva instancia Query que incluye todos los documentos de la base de datos que están contenidos en una colección o subcolección con el collectionId dado. |
connectFirestoreEmulator(firestore, host, puerto, opciones) | Modifique esta instancia para comunicarse con el emulador de Cloud Firestore. Nota: Esto debe llamarse antes de que esta instancia se haya utilizado para realizar cualquier operación. |
doc(firestore, ruta, segmentos de ruta) | Obtiene una instancia DocumentReference que hace referencia al documento en la ruta absoluta especificada. |
runTransaction(firestore, updateFunction, opciones) | Ejecuta la updateFunction dada y luego intenta confirmar los cambios aplicados dentro de la transacción. Si algún documento leído dentro de la transacción ha cambiado, Cloud Firestore vuelve a intentar la updateFunction . Si no se confirma después de 5 intentos, la transacción falla. El número máximo de escrituras permitidas en una sola transacción es 500. |
terminar (firestore) | Termina la instancia Firestore proporcionada. Después de llamar terminate() solo se pueden utilizar las funciones clearIndexedDbPersistence() . Cualquier otra función arrojará un FirestoreError . La terminación no cancela ninguna escritura pendiente y ninguna promesa que esté esperando una respuesta del servidor no se resolverá. Para reiniciar después de la terminación, cree una nueva instancia de Firestore con getFirestore() . Nota: En circunstancias normales, no es necesario llamar terminate() . Esta función es útil solo cuando desea forzar que esta instancia libere todos sus recursos o en combinación con clearIndexedDbPersistence() para garantizar que todo el estado local se destruya entre ejecuciones de prueba. |
escribir lote (firestore) | Crea un lote de escritura, utilizado para realizar múltiples escrituras como una única operación atómica. El número máximo de escrituras permitidas en un único WriteBatch es 500. El resultado de estas escrituras solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa devuelta. Si el cliente está desconectado, la escritura falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
función() | |
contar() | Cree un objeto AggregateField que pueda usarse para calcular el recuento de documentos en el conjunto de resultados de una consulta. |
eliminar campo() | Devuelve un centinela para usar con updateDoc() o setDoc() con {merge: true} para marcar un campo para su eliminación. |
documentoId() | Devuelve un FieldPath centinela especial para hacer referencia al ID de un documento. Se puede utilizar en consultas para ordenar o filtrar por ID del documento. |
obtenerFirestore() | Devuelve la instancia de Firestore predeterminada existente que está asociada con la FirebaseApp predeterminada . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada. |
marca de tiempo del servidor() | Devuelve un centinela usado con setDoc() o updateDoc() para incluir una marca de tiempo generada por el servidor en los datos escritos. |
función (ID de base de datos, ...) | |
getFirestore(ID de base de datos) | (BETA) Devuelve la instancia de Firestore existente que está asociada con la FirebaseApp predeterminada . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada. |
función(elementos,...) | |
matrizEliminar(elementos) | Devuelve un valor especial que se puede usar con setDoc() o que le dice al servidor que elimine los elementos dados de cualquier valor de matriz que ya exista en el servidor. Todas las instancias de cada elemento especificado se eliminarán de la matriz. Si el campo que se está modificando aún no es una matriz, se sobrescribirá con una matriz vacía. |
matrizUnión(elementos) | Devuelve un valor especial que se puede utilizar con setDoc() o updateDoc() que le indica al servidor que una los elementos dados con cualquier valor de matriz que ya exista en el servidor. Cada elemento especificado que aún no exista en la matriz se agregará al final. Si el campo que se está modificando aún no es una matriz, se sobrescribirá con una matriz que contenga exactamente los elementos especificados. |
función(campo, ...) | |
promedio (campo) | Cree un objeto AggregateField que pueda usarse para calcular el promedio de un campo específico en un rango de documentos en el conjunto de resultados de una consulta. |
suma (campo) | Cree un objeto AggregateField que pueda usarse para calcular la suma de un campo específico en un rango de documentos en el conjunto de resultados de una consulta. |
función (ruta del campo, ...) | |
ordenar por (ruta del campo, cadena de dirección) | Crea un QueryOrderByConstraint que ordena el resultado de la consulta por el campo especificado, opcionalmente en orden descendente en lugar de ascendente. Nota: Los documentos que no contengan el campo especificado no estarán presentes en el resultado de la consulta. |
donde(rutacampo, opStr, valor) | Crea un QueryFieldFilterConstraint que exige que los documentos deben contener el campo especificado y que el valor debe satisfacer la restricción de relación proporcionada. |
función (valores de campo, ...) | |
final en (valores de campo) | Crea un 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 de los campos debe coincidir con el orden de las cláusulas de orden por de la consulta. |
finalizar antes (valores de campo) | Crea un 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 de los campos debe coincidir con el orden de las cláusulas de orden por de la consulta. |
empezar después (valores de campo) | Crea un 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 de los campos debe coincidir con el orden de las cláusulas de orden por de la consulta. |
inicio en (valores de campo) | Crea un QueryStartAtConstraint que modifica el conjunto de resultados para comenzar en los campos proporcionados en relación con el orden de la consulta. El orden de los valores de los campos debe coincidir con el orden de las cláusulas de orden por de la consulta. |
función(izquierda, ...) | |
agregadoFieldEqual(izquierda, derecha) | Compara dos 'AggregateField ` instancias para la igualdad. |
agregadoQuerySnapshotEqual(izquierda, derecha) | Compara dos instancias AggregateQuerySnapshot para determinar la igualdad. Dos instancias AggregateQuerySnapshot se consideran "iguales" si tienen consultas subyacentes que comparan datos iguales y iguales. |
consultaIgual(izquierda, derecha) | Devuelve verdadero si las consultas proporcionadas apuntan a la misma colección y aplican las mismas restricciones. |
refEqual(izquierda, derecha) | Devuelve verdadero si las referencias proporcionadas son iguales. |
instantáneaEqual(izquierda, derecha) | Devuelve verdadero si las instantáneas proporcionadas son iguales. |
función(límite, ...) | |
límite(límite) | Crea un QueryLimitConstraint que solo devuelve los primeros documentos coincidentes. |
límite al último (límite) | Crea un QueryLimitConstraint que solo devuelve los últimos documentos coincidentes. Debe especificar al menos una cláusula orderBy para las consultas limitToLast ; de lo contrario, se generará una excepción durante la ejecución. |
función (nivel de registro, ...) | |
setLogLevel(logLevel) | Establece el nivel de detalle de los registros de Cloud Firestore (depuración, error o silencio). |
función(n, ...) | |
incremento(n) | Devuelve un valor especial que se puede utilizar con setDoc() o updateDoc() que le indica al servidor que incremente el valor actual del campo en el valor dado. Si el operando o el valor del campo actual utiliza precisión de punto flotante, toda la aritmética sigue la semántica IEEE 754. Si ambos valores son 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 procesadas por el backend de Firestore, todas las operaciones con números enteros tienen un límite entre -2^63 y 2^63-1. Si el valor del campo actual no es del tipo number , o si el campo aún no existe, la transformación establece el campo en el valor dado. |
función (consulta, ...) | |
getAggregate(consulta, especificación agregada) | Calcula las agregaciones especificadas sobre los documentos en el conjunto de resultados de la consulta dada sin descargar realmente los documentos. Usar esta función para realizar agregaciones es eficiente porque solo se descargan los valores de agregación finales, no los datos de los documentos. Esta función puede realizar agregaciones de documentos en los casos en que el conjunto de resultados sea prohibitivamente grande para descargarlo por completo (miles de documentos). |
getCount(consulta) | Calcula la cantidad de documentos en el conjunto de resultados de la consulta dada sin descargar los documentos. Usar esta función para contar los documentos es eficiente porque solo se descarga el recuento final, no los datos de los documentos. Esta función puede contar los documentos en los casos en que el conjunto de resultados sea prohibitivamente grande para descargarlo por completo (miles de documentos). |
obtenerDocs(consulta) | Ejecuta la consulta y devuelve los resultados como QuerySnapshot. . Todas las consultas son ejecutadas directamente por el servidor, incluso si la consulta se ejecutó previamente. Las modificaciones recientes solo se reflejan en los resultados recuperados si ya han sido aplicadas por el backend. Si el cliente está desconectado, la operación falla. Para ver los resultados previamente almacenados en caché y las modificaciones locales, use el SDK completo de Firestore. |
consulta (consulta, filtro compuesto, restricciones de consulta) | Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales. |
consulta (consulta, consultaRestricciones) | Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales. |
función (consultaConstraints, ...) | |
y (restricciones de consulta) | Crea una nueva QueryCompositeFilterConstraint 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 (consultaRestricciones) | Crea una nueva QueryCompositeFilterConstraint 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. |
función(referencia, ...) | |
addDoc(referencia, datos) | Agregue un nuevo documento a CollectionReference especificada con los datos proporcionados, asignándole 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 devuelta. Si el cliente está desconectado, la escritura falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
colección (referencia, ruta, segmentos de ruta) | Obtiene una instancia CollectionReference que hace referencia a una subcolección de reference en la ruta relativa especificada. |
colección (referencia, ruta, segmentos de ruta) | Obtiene una instancia CollectionReference que hace referencia a una subcolección de reference en la ruta relativa especificada. |
eliminarDoc(referencia) | Elimina el documento al que hace referencia la DocumentReference especificada. La eliminación solo se reflejará en las lecturas de documentos que se produzcan después de que se resuelva la promesa devuelta. Si el cliente está desconectado, la eliminación falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
doc(referencia, ruta, segmentos de ruta) | Obtiene una instancia DocumentReference que hace referencia a un documento dentro de la reference en la ruta relativa especificada. Si no se especifica ninguna ruta, se utilizará una ID única generada automáticamente para la DocumentReference devuelta. |
doc(referencia, ruta, segmentos de ruta) | Obtiene una instancia DocumentReference que hace referencia a un documento dentro de la reference en la ruta relativa especificada. |
getDoc(referencia) | Lee el documento al que hace referencia la referencia del documento especificado. Todos los documentos se obtienen directamente del servidor, incluso si el documento se leyó o modificó previamente. Las modificaciones recientes solo se reflejan en la DocumentSnapshot recuperada si ya han sido aplicadas por el backend. Si el cliente está desconectado, la lectura falla. Si desea utilizar el almacenamiento en caché o ver modificaciones locales, utilice el SDK completo de Firestore. |
setDoc(referencia, datos) | Escribe en el documento al que hace referencia la DocumentReference especificada. 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 devuelta. Si el cliente está desconectado, la escritura falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
setDoc(referencia, datos, opciones) | Escribe en el documento al que hace referencia la DocumentReference especificada. Si el documento aún no existe, se creará. Si proporciona 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 devuelta. Si el cliente está desconectado, la escritura falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
updateDoc(referencia, datos) | Actualiza los campos del documento al que hace referencia la DocumentReference especificada. 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 devuelta. Si el cliente está desconectado, la actualización falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
updateDoc(referencia, campo, valor, másCamposAndValues) | Actualiza los campos en el documento al que hace referencia la DocumentReference especificada. La actualización fallará si se aplica a un documento que no existe. Los campos anidados se pueden actualizar proporcionando cadenas de ruta de campo separadas por puntos o proporcionando 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 devuelta. Si el cliente está desconectado, la actualización falla. Si desea ver modificaciones locales o escrituras en búfer hasta que el cliente esté en línea, use el SDK de Firestore completo. |
función (instantánea, ...) | |
finalizar en (instantánea) | Crea un QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en el documento proporcionado (inclusive). La posición final es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el ordenPor de la consulta. |
finalizar antes (instantánea) | Crea un QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes del documento proporcionado (exclusivo). La posición final es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el ordenPor de la consulta. |
empezar después (instantánea) | Crea un 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 ordenPor de la consulta. |
inicio en (instantánea) | Crea un QueryStartAtConstraint que modifica el conjunto de resultados para comenzar 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 el orderBy de esta consulta. |
Clases
Clase | Descripción |
---|---|
Campo agregado | Representa una agregación que puede realizar Firestore. |
Instantánea de consulta agregada | Los resultados de la ejecución de una consulta de agregación. |
bytes | Un objeto inmutable que representa una matriz de bytes. |
ColecciónReferencia | Se puede utilizar un objeto CollectionReference para agregar documentos, obtener referencias de documentos y consultar documentos (usando query() ). |
Referencia de documento | Una DocumentReference se refiere 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 referenciada puede existir o no. |
Instantánea del documento | Un DocumentSnapshot contiene datos leídos de un documento en su base de datos de Firestore. Los datos se pueden extraer con .data() o .get(<field>) para obtener un campo específico. Para una DocumentSnapshot que apunta a un documento no existente, cualquier acceso a datos devolverá "indefinido". Puede utilizar el método exists() para verificar explícitamente la existencia de un documento. |
Ruta de campo | Un FieldPath se refiere a un campo en un documento. La ruta puede consistir en un único nombre de campo (que hace referencia a un campo de nivel superior en el documento) o una lista de nombres de campos (que hace referencia a un campo anidado en el documento). Cree un FieldPath proporcionando nombres de campos. Si se proporciona más de un nombre de campo, la ruta apuntará a un campo anidado en un documento. |
Valor de campo | Valores centinela que se pueden utilizar al escribir campos de documentos con set() o update() . |
Tienda de fuego | La interfaz del servicio Cloud Firestore. No llame a este constructor directamente. En su lugar, utilice getFirestore() . |
Error de tienda de fuego | Un error devuelto por una operación de Firestore. |
Geopunto | Un objeto inmutable que representa una ubicación geográfica en Firestore. La ubicación se representa como un par de latitud/longitud. Los valores de latitud están en el rango de [-90, 90]. Los valores de longitud están en el rango de [-180, 180]. |
Consulta | Una Query se refiere a una consulta que puede leer o escuchar. También puede construir objetos Query refinados agregando filtros y ordenándolos. |
QueryCompositeFilterConstraint | Se utiliza un QueryCompositeFilterConstraint para limitar el conjunto de documentos devueltos por una consulta de Firestore realizando el OR o el AND lógico de múltiples QueryFieldFilterConstraint . s o QueryCompositeFilterConstraint s. QueryCompositeFilterConstraint se crean invocando or() o and() y luego se pueden pasar a query() para crear una nueva instancia de consulta que también contenga QueryCompositeFilterConstraint . |
Restricción de consulta | Se utiliza una QueryConstraint para limitar el conjunto de documentos devueltos por una consulta de Firestore. Los QueryConstraint se crean invocando dónde() , ordenar por() , Empieza en() , empezar después() , finalizar antes() , termina en() , límite() , limitToLast() y luego se puede pasar a query() para crear una nueva instancia de consulta que también contenga este QueryConstraint . |
ConsultaDocumentoInstantánea | Un QueryDocumentSnapshot contiene datos leídos de un documento en su base de datos de Firestore como parte de una consulta. Se garantiza que el documento existe y sus datos se pueden extraer con .data() o .get(<field>) para obtener un campo específico. Un QueryDocumentSnapshot ofrece la misma superficie API que un DocumentSnapshot . Dado que los resultados de la consulta solo contienen documentos existentes, la propiedad exists siempre será verdadera y data() nunca devolverá "indefinido". |
QueryEndAtConstraint | Se utiliza QueryEndAtConstraint para excluir documentos del final de un conjunto de resultados devuelto por una consulta de Firestore. 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 . |
Restricción de filtro de campo de consulta | Un QueryFieldFilterConstraint se utiliza para limitar el conjunto de documentos devueltos por una consulta de Firestore filtrando uno o más campos de documento. 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 . |
Restricción de límite de consulta | Se utiliza un QueryLimitConstraint para limitar la cantidad de documentos devueltos por una consulta de Firestore. 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 . |
ConsultaOrderByConstraint | Se utiliza QueryOrderByConstraint para ordenar el conjunto de documentos devueltos por una consulta de Firestore. QueryOrderByConstraint se crean invocando 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 contengan el campo ordenarPor no estarán presentes en el resultado de la consulta. |
ConsultaInstantánea | Un QuerySnapshot contiene cero o más objetos DocumentSnapshot que representan los resultados de una consulta. Se puede acceder a los documentos como una matriz a través de la propiedad docs o enumerarlos usando el método forEach . El número de documentos se puede determinar mediante las propiedades empty y size . |
ConsultaInicioEnConstraint | Se utiliza QueryStartAtConstraint para excluir documentos del inicio de un conjunto de resultados devuelto por una consulta de Firestore. QueryStartAtConstraint se crean invocando startAt() o startAfter() y luego se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryStartAtConstraint . |
Marca de tiempo | Una Timestamp representa un punto en el tiempo independiente de cualquier zona horaria o calendario, representado como segundos y fracciones de segundos con una resolución de nanosegundos en la época UTC. Está codificado utilizando el Calendario Gregoriano Proléptico que extiende el calendario gregoriano hacia atrás hasta el año uno. Se codifica asumiendo que todos los minutos tienen una duración de 60 segundos, es decir, los segundos intercalares están "borrados" de modo que no se necesita una tabla de segundos intercalares para la interpretación. El rango es de 0001-01-01T00:00:00Z a 9999-12-31T23:59:59.999999999Z. Para obtener ejemplos y especificaciones adicionales, consulte la definición de marca de tiempo. . |
Transacción | Una referencia a una transacción. El objeto Transaction pasado a updateFunction de una transacción proporciona los métodos para leer y escribir datos dentro del contexto de la transacción. Ver ejecutarTransacción() . |
escribir lote | Un lote de escritura, utilizado para realizar múltiples escrituras como una sola unidad atómica. Se puede adquirir un objeto WriteBatch llamando a writeBatch() . Proporciona métodos para agregar escrituras al lote de escritura. Ninguna de las escrituras se confirmará (ni será visible localmente) hasta que se llame a WriteBatch.commit() . |
Interfaces
Interfaz | Descripción |
---|---|
Especificaciones agregadas | Especifica un conjunto de agregaciones y sus alias. |
Datos del documento | Datos del documento (para usar con setDoc() ) consta de campos asignados a valores. |
FirestoreDataConverter | Convertidor utilizado por withConverter() para transformar objetos de usuario de tipo AppModelType en datos de Firestore de tipo DbModelType . El uso del convertidor le permite especificar argumentos de tipo genérico al almacenar y recuperar objetos de Firestore. En este contexto, un "AppModel" es una clase que se utiliza en una aplicación para empaquetar información y funcionalidad relacionadas. Una clase de este tipo podría, por ejemplo, tener propiedades con tipos de datos anidados complejos, propiedades utilizadas para la memorización, propiedades de tipos no admitidos por Firestore (como symbol y bigint ) y funciones auxiliares que realizan operaciones compuestas. Estas clases no son adecuadas ni posibles de almacenar en una base de datos de Firestore. En cambio, las instancias de dichas clases deben convertirse en "objetos JavaScript antiguos y simples" (POJO) con propiedades exclusivamente primitivas, potencialmente anidadas dentro de otros POJO o matrices de POJO. En este contexto, este tipo se conoce como "DbModel" y sería un objeto adecuado para persistir 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 a DbModel cuando se almacena en Firestore y convertir DbModel a AppModel cuando se recupera de Firestore. |
Ajustes | Especifica configuraciones personalizadas para su instancia de Cloud Firestore. Debe configurarlos antes de invocar cualquier otro método. |
Opciones de transacción | Opciones para personalizar el comportamiento de las transacciones. |
Tipo de alias
Tipo Alias | Descripción |
---|---|
AgregarPrefijoAClaves | Devuelve un nuevo mapa donde cada clave tiene como prefijo la clave exterior adjunta a un punto. |
Tipo de campo agregado | La unión de todos los tipos AggregateField admitidos por Firestore. |
Datos de especificación agregados | Un tipo cuyas claves se toman de AggregateSpec y cuyos valores son el resultado de la agregación realizada por el AggregateField correspondiente a partir de la entrada AggregateSpec . |
Tipo agregado | Tipo de unión que representa el tipo de agregado que se va a realizar. |
Campos de actualización infantil | Ayudante para calcular los campos anidados para un tipo determinado T1. Esto es necesario para distribuir tipos de unión como undefined | {...} (sucede con accesorios 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. Consulte https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types |
Código de error de Firestore | El conjunto de códigos de estado de Firestore. Los códigos son los mismos que los expuestos por gRPC aquí: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md Valores posibles: - 'cancelado': la operación fue cancelada (normalmente por la persona que llama). - 'desconocido': error desconocido o error de un dominio de error diferente. - 'argumento-inválido': el cliente especificó un argumento no válido. Tenga en cuenta que esto difiere de la "condición previa fallida". 'argumento-inválido' indica argumentos que son problemáticos independientemente del estado del sistema (por ejemplo, un nombre de campo no válido). - 'fecha límite excedida': la fecha límite expiró antes de que se pudiera completar la operación. Para operaciones que cambian el estado del sistema, este error puede aparecer incluso si la operación se completó exitosamente. Por ejemplo, una respuesta exitosa de un servidor podría haberse retrasado lo suficiente como para que expirara el plazo. - 'no encontrado': No se encontró algún documento solicitado. - 'ya-existe': Algún documento que intentamos crear ya existe. - 'permiso denegado': la persona que llama no tiene permiso para ejecutar la operación especificada. - 'recursos agotados': se ha agotado algún recurso, tal vez una cuota por usuario, o tal vez todo el sistema de archivos se haya quedado sin espacio. - 'precondición fallida': La operación fue rechazada porque el sistema no se encuentra en el estado requerido para la ejecución de la operación. - 'abortada': la operación fue abortada, generalmente debido a un problema de concurrencia como transacciones abortadas, etc. - 'fuera de rango': la operación se intentó más allá del rango válido. - 'no implementado': la operación no está implementada o no es compatible/habilitada. - 'interno': Errores internos. Significa que se han roto algunas invariantes esperadas por el sistema subyacente. Si ve uno de estos errores, algo está muy roto. - 'no disponible': el servicio no está disponible actualmente. Lo más probable es que se trate de una condición transitoria y se puede corregir volviendo a intentarlo con un retroceso. - 'pérdida de datos': pérdida o corrupción de datos irrecuperables. - 'no autenticado': La solicitud no tiene credenciales de autenticación válidas para la operación. |
Campos de actualización anidados | Para cada campo (por ejemplo, 'barra'), busque todas las claves anidadas (por ejemplo, { 'bar.baz': T1, 'bar.qux': T2 } ). Interséctalos para crear un único mapa que contenga todas las claves posibles, todas marcadas como opcionales. |
Ordenarpordirección | La dirección de una cláusula orderBy() se especifica como 'desc' o 'asc' (descendente o ascendente). |
ParcialConValorDeCampo | Similar a Partial<T> de Typecript, pero permite omitir campos anidados y pasar FieldValues como valores de propiedad. |
Primitivo | Tipos primitivos. |
Tipo de restricción de consulta | Describe las diferentes restricciones de consulta disponibles en este SDK. |
Restricción de filtro de consulta | 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 utilizan para limitar u ordenar el conjunto de documentos, pero que no filtran explícitamente en un campo de documento. Los QueryNonFilterConstraint se crean invocando orderBy() , Empieza en() , empezar después() , finalizar antes() , termina en() , limit() o limitToLast() y luego se puede pasar a query() para crear una nueva instancia de consulta que también contenga QueryConstraint . |
Establecer opciones | Un objeto de opciones que configura el comportamiento de setDoc() y llamadas. Estas llamadas se pueden configurar para realizar fusiones granulares en lugar de sobrescribir los documentos de destino en su totalidad proporcionando SetOptions con merge: true . |
unión a la intersección | Dado un tipo de unión U = T1 | T2 | ... , devuelve un tipo intersectado (T1 & T2 & ...) . Utiliza tipos condicionales distributivos e inferencias a partir de tipos condicionales. Esto funciona porque varios candidatos para el mismo tipo de variable en posiciones contravariantes hacen 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 -tipo |
Actualizar datos | Actualizar datos (para usar con updateDoc() ) que consta de rutas de campo (por ejemplo, 'foo' o 'foo.baz') asignadas a valores. Los campos que contienen puntos hacen referencia a campos anidados dentro del documento. Los FieldValues se pueden pasar como valores de propiedad. |
DondeFilterOp | Las condiciones de filtro en una cláusula where() se especifican usando las cadenas '<', '<=', '==', '!=', '>=', '>', 'array-contains' , 'en', 'matriz-contiene-cualquiera' y 'no-en'. |
Con valor de campo | Permite pasar FieldValues como un valor de propiedad manteniendo la seguridad de tipos. |
función (aplicación, ...)
getFirestore (aplicación)
Devuelve la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp proporcionada. . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada.
Firma:
export declare function getFirestore(app: FirebaseApp): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
aplicación | Aplicación Firebase | La instancia de FirebaseApp a la que está asociada la instancia de Firestore devuelta. |
Devoluciones:
La instancia de Firestore de la aplicación proporcionada.
getFirestore(aplicación, ID de base de datos)
Esta API se proporciona como una vista previa para los desarrolladores y puede cambiar según los comentarios que recibamos. No utilice esta API en un entorno de producción.
Devuelve la instancia de Firestore existente que está asociada con la FirebaseApp proporcionada. . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada.
Firma:
export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
aplicación | Aplicación Firebase | La instancia de FirebaseApp a la que está asociada la instancia de Firestore devuelta. |
ID de base de datos | cadena | El nombre de la base de datos. |
Devoluciones:
La instancia de Firestore de la aplicación proporcionada.
inicializarFirestore(aplicación, configuración)
Inicializa una nueva instancia de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que cualquier otra función, incluida getFirestore() . Si la configuración personalizada está vacía, 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 |
---|---|---|
aplicación | Aplicación Firebase | La FirebaseApp con la que se asociará la instancia Firestore . |
ajustes | Ajustes | Un objeto de configuración para configurar la instancia Firestore . |
Devoluciones:
Una instancia Firestore
recién inicializada.
inicializarFirestore(aplicación, configuración, ID de base de datos)
Esta API se proporciona como una vista previa para los desarrolladores y puede cambiar según los comentarios que recibamos. No utilice esta API en un entorno de producción.
Inicializa una nueva instancia de Cloud Firestore con la configuración proporcionada. Solo se puede llamar antes que cualquier otra función, incluida getFirestore() . Si la configuración personalizada está vacía, 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 |
---|---|---|
aplicación | Aplicación Firebase | La FirebaseApp con la que se asociará la instancia Firestore . |
ajustes | Ajustes | Un objeto de configuración para configurar la instancia Firestore . |
ID de base de datos | cadena | El nombre de la base de datos. |
Devoluciones:
Una instancia Firestore
recién inicializada.
función(firestore, ...)
colección (firestore, ruta, segmentos de ruta)
Obtiene una instancia CollectionReference
que hace referencia a la colección en la ruta absoluta especificada.
Firma:
export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
tienda de fuego | Tienda de fuego | Una referencia a la instancia raíz Firestore . |
camino | cadena | Una ruta de acceso a una colección separada por barras diagonales. |
rutaSegmentos | cadena[] | Segmentos de ruta adicionales para aplicar en relación con el primer argumento. |
Devoluciones:
ColecciónReferencia < DocumentoDatos , Datos del documento >
La instancia CollectionReference
.
Excepciones
Si el camino final tiene un número par de segmentos y no apunta a una colección.
grupo de colección (firestore, ID de colección)
Crea y devuelve una nueva instancia Query
que incluye todos los documentos de la base de datos que están contenidos en una colección o subcolección con el collectionId
dado. .
Firma:
export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
tienda de fuego | Tienda de fuego | Una referencia a la instancia raíz Firestore . |
ID de colección | cadena | Identifica las colecciones sobre las que consultar. Se incluirá cada colección o subcolección con este ID como último segmento de su ruta. No puede contener una barra. |
Devoluciones:
Consulta < DocumentoDatos , Datos del documento >
La Query
creada .
connectFirestoreEmulator(firestore, host, puerto, opciones)
Modifique esta instancia para comunicarse 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 |
---|---|---|
tienda de fuego | Tienda de fuego | La instancia Firestore que se configurará para conectarse al emulador. |
anfitrión | cadena | el host del emulador (por ejemplo: localhost). |
puerto | número | el puerto del emulador (ej: 9000). |
opciones | {mockUserToken?: EmulatorMockTokenOptions | cadena; } |
Devoluciones:
vacío
doc(firestore, ruta, segmentos de ruta)
Obtiene una instancia DocumentReference
que se refiere al documento en la ruta absoluta especificada.
Firma:
export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
tienda de fuego | Tienda de fuego | Una referencia a la instancia de Root Firestore . |
camino | cadena | Un camino separado por barras a un documento. |
segmentos de ruta | cadena[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Devoluciones:
Referencia de documento < DocumentData , DocumentData >
La instancia DocumentReference
.
Excepciones
Si la ruta final tiene un número impar de segmentos y no apunta a un documento.
Runtransaction (Firestore, UpdateFunction, Opciones)
Ejecuta la updateFunction
dada e intenta confirmar los cambios aplicados dentro de la transacción. Si algún documento leída dentro de la transacción ha cambiado, Cloud Firestore reemplaza la updateFunction
. Si no se compromete después de 5 intentos, la transacción falla.
El número máximo de escrituras 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 |
---|---|---|
tienda de fuego | Tienda de fuego | Una referencia a la base de datos Firestore para ejecutar esta transacción. |
Funcion de actualización | (Transacción: transacción ) => Promesa <t> | La función para ejecutar dentro del contexto de transacción. |
opciones | Opciones de transacción | Un objeto de opciones para configurar el número máximo de intentos de comprometerse. |
Devoluciones:
Promesa<T>
Si la transacción se completó con éxito o se abortó explícitamente (la updateFunction
devolvió una promesa fallida), la promesa devuelta por la updateFunction
se devuelve aquí. De lo contrario, si la transacción falló, se devuelve una promesa rechazada con el error de falla correspondiente.
Terminar (Firestore)
Termina la instancia Firestore
proporcionada.
Después de llamar terminate()
solo se pueden usar las funciones clearIndexedDbPersistence()
. Cualquier otra función arrojará un FirestoreError
. La terminación no cancela ninguna escritura pendiente, y no se resolverá cualquier promesa que esté en espera de una respuesta del servidor.
Para reiniciar después de la terminación, cree una nueva instancia de Firestore
con GetFirestore () .
Firma:
export declare function terminate(firestore: Firestore): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
tienda de fuego | Tienda de fuego | La instancia Firestore para terminar. |
Devoluciones:
Promesa<nulo>
Una Promise
que se resuelve cuando la instancia se ha terminado con éxito.
WriteBatch (Firestore)
Crea un lote de escritura, utilizado para realizar múltiples escrituras como una sola operación atómica. El número máximo de escrituras permitidas en una sola escritura es 500.
El resultado de estas escrituras solo se reflejará en las lecturas de documentos que ocurren después de que la promesa devuelta resuelve. Si el cliente está fuera de línea, la escritura falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
Firma:
export declare function writeBatch(firestore: Firestore): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
tienda de fuego | Tienda de fuego |
Devoluciones:
Un WriteBatch
que puede usarse para ejecutar atómicamente múltiples escrituras.
función()
contar()
Cree un objeto AggregateField que pueda usarse para calcular el recuento de documentos en el conjunto de resultados de una consulta.
Firma:
export declare function count(): AggregateField<number>;
Devoluciones:
Campo agregado <número>
Deletefield ()
Devuelve un Sentinel para usar con actualateC () o setDoc () con {merge: true}
para marcar un campo para la eliminación.
Firma:
export declare function deleteField(): FieldValue;
Devoluciones:
documentId ()
Devuelve un Sentinel FieldPath
especial para referirse a la identificación de un documento. Se puede usar en consultas para ordenar o filtrar mediante la identificación del documento.
Firma:
export declare function documentId(): FieldPath;
Devoluciones:
getFirestore ()
Devuelve la instancia de Firestore predeterminada existente que está asociada con el FirebaseApp predeterminado . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada.
Firma:
export declare function getFirestore(): Firestore;
Devoluciones:
La instancia de Firestore de la aplicación proporcionada.
SerververImestamp ()
Devuelve un Sentinel utilizado con SetDoc () o UpdateDoc () para incluir una marca de tiempo generada por el servidor en los datos escritos.
Firma:
export declare function serverTimestamp(): FieldValue;
Devoluciones:
función (base de datos, ...)
GetFirestore (DatabaseId)
Esta API se proporciona como una vista previa para los desarrolladores y puede cambiar en función de los comentarios que recibimos. No utilice esta API en un entorno de producción.
Devuelve la instancia de Firestore existente que está asociada con el FirebaseApp predeterminado . Si no existe ninguna instancia, inicializa una nueva instancia con la configuración predeterminada.
Firma:
export declare function getFirestore(databaseId: string): Firestore;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
ID de base de datos | cadena | El nombre de la base de datos. |
Devoluciones:
La instancia de Firestore de la aplicación proporcionada.
función (elementos, ...)
Arrayremove (elementos)
Devuelve un valor especial que se puede usar con setDoc () o que le indique al servidor que elimine los elementos dados de cualquier valor de matriz que ya existe en el servidor. Todas las instancias de cada elemento especificado se eliminarán de la matriz. Si el campo que se modifica ya no es una matriz, se sobrescribirá con una matriz vacía.
Firma:
export declare function arrayRemove(...elements: unknown[]): FieldValue;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
elementos | desconocido[] | Los elementos para eliminar de la matriz. |
Devoluciones:
El FieldValue
Sentinel para su uso en una llamada a setDoc()
o updateDoc()
Arrayunion (elementos)
Devuelve un valor especial que se puede usar con SetDoc () o UpdateateC () que le indique al servidor que se unan a los elementos dados con cualquier valor de matriz que ya exista en el servidor. Cada elemento especificado que ya no existe en la matriz se agregará al final. Si el campo que se modifica ya no es una matriz, se sobrescribirá con una matriz que contiene exactamente los elementos especificados.
Firma:
export declare function arrayUnion(...elements: unknown[]): FieldValue;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
elementos | desconocido[] | Los elementos para la unión en la matriz. |
Devoluciones:
El FieldValue
Sentinel para su uso en una llamada a setDoc()
o updateDoc()
.
función (campo, ...)
promedio (campo)
Cree un objeto AggregateField que pueda usarse 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 que el campo promedia en todo el conjunto de resultados. |
Devoluciones:
Campo agregado <número | nulo>
suma (campo)
Cree un objeto AggregateField que pueda usarse 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 a sumar en el conjunto de resultados. |
Devoluciones:
Campo agregado <número>
función (FieldPath, ...)
Orderby (FieldPath, DirectionsTR)
Crea una consulta de consignación que clasifica el resultado de la consulta por el campo especificado, opcionalmente en orden descendente en lugar de ascender.
Firma:
export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
trayectoria | cadena | Ruta de campo | El campo para clasificar. |
direcciones | OrderByDirection | Dirección opcional para ordenar ('ASC' o 'Desc'). Si no se especifica, el orden ascenderá. |
Devoluciones:
La consulta creada .
Dónde (FieldPath, Opstr, Value)
Crea una CONSTRAENCIÓN DE LA QUERYFIELDFILTER que aplica que los documentos deben contener el campo especificado y que el valor debe satisfacer 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 |
---|---|---|
trayectoria | cadena | Ruta de campo | El camino para comparar |
OPSTR | DondeFilterOp | La cadena de operación (por ejemplo, "& lt;", "& lt; =", "==", "& lt;", "& lt; =", "! ="). |
valor | desconocido | El valor para la comparación |
Devoluciones:
La consulta creada .
función (Values de campo, ...)
Endat (Values de campo)
Crea una consulta de consulta que modifica el resultado establecido para finalizar en los campos proporcionados en relación con el orden de la consulta. El orden de los valores de campo debe coincidir con el orden del orden por 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 para finalizar esta consulta en, en orden de la orden de la consulta por. |
Devoluciones:
Una consulta de la Constalación para pasar a query()
Endbefore (Values de campo)
Crea una consulta de consulta que modifica el resultado establecido para finalizar antes de los campos proporcionados en relación con el orden de la consulta. El orden de los valores de campo debe coincidir con el orden del orden por 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 campo para finalizar esta consulta antes, en orden de la orden de la consulta por. |
Devoluciones:
Una consulta de la Constalación para pasar a query()
startafter (Values de campo)
Crea una consulta de consulta que modifica el resultado establecido para comenzar después de los campos proporcionados en relación con el orden de la consulta. El orden de los valores de campo debe coincidir con el orden del orden por 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 para comenzar esta consulta después, en orden de la orden de la consulta por. |
Devoluciones:
Una consulta de query()
Startat (Values de campo)
Crea una consulta de consulta que modifica el resultado establecido para comenzar en los campos proporcionados en relación con el orden de la consulta. El orden de los valores de campo debe coincidir con el orden del orden por 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 campo para comenzar esta consulta en, en orden de la orden de la consulta. |
Devoluciones:
Una consulta de query()
.
función (izquierda, ...)
AgregateFieldEqual (izquierda, derecha)
Compara dos 'Aggregatefield `Instancias de igualdad.
Firma:
export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
izquierda | Campo agregado <desconocido> | Compare este AggregateField con la right . |
bien | Campo agregado <desconocido> | Compare este AggregateField con la left . |
Devoluciones:
booleano
agregatequerysnapshotequal (izquierda, derecha)
Compara dos instancias AggregateQuerySnapshot
para la igualdad.
Dos instancias AggregateQuerySnapshot
se consideran "iguales" si tienen consultas subyacentes que comparan los datos iguales y mismos.
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 | Instantánea de consulta agregada <Aggreatespectype, AppModelType, dbModelType> | El primer AggregateQuerySnapshot para comparar. |
bien | Instantánea de consulta agregada <Aggreatespectype, AppModelType, dbModelType> | El segundo AggregateQuerySnapshot para comparar. |
Devoluciones:
booleano
true
si los objetos son "iguales", como se definió anteriormente, o false
de lo contrario.
QueryEqual (izquierda, derecha)
Devuelve verdadero 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, dbModelType> | Una Query para comparar. |
bien | Consulta <AppModelType, dbModelType> | Una Query para comparar. |
Devoluciones:
booleano
Verdadero si las referencias apuntan a la misma ubicación en la misma base de datos Firestore.
Refecto (izquierda, derecha)
Devuelve verdadero 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 | Referencia de documento <AppModelType, dbModelType> | ColecciónReferencia <AppModelType, dbModelType> | Una referencia para comparar. |
bien | Referencia de documento <AppModelType, dbModelType> | ColecciónReferencia <AppModelType, dbModelType> | Una referencia para comparar. |
Devoluciones:
booleano
Verdadero si las referencias apuntan a la misma ubicación en la misma base de datos Firestore.
Snapshotequal (izquierda, derecha)
Devuelve verdadero 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 | Instantánea del documento <AppModelType, dbModelType> | ConsultaInstantánea <AppModelType, dbModelType> | Una instantánea para comparar. |
bien | Instantánea del documento <AppModelType, dbModelType> | ConsultaInstantánea <AppModelType, dbModelType> | Una instantánea para comparar. |
Devoluciones:
booleano
Verdadero si las instantáneas son iguales.
función (límite, ...)
límite (límite)
Crea una CONSTRAENCIA DE QUERYLIMIT que solo devuelve los primeros documentos coincidentes.
Firma:
export declare function limit(limit: number): QueryLimitConstraint;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
límite | número | El número máximo de artículos a devolver. |
Devoluciones:
La consulta creada .
Limittolast (límite)
Crea una CONSTRAENCIA DE QUERYLIMIT que solo devuelve los últimos documentos coincidentes.
Debe especificar al menos una cláusula orderBy
para consultas limitToLast
, de lo contrario, se lanzará 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 | El número máximo de artículos a devolver. |
Devoluciones:
La consulta creada .
función (Loglevel, ...)
SetLoglevel (Loglevel)
Establece la verbosidad de los registros de nube Firestore (depuración, error o silencio).
Firma:
export declare function setLogLevel(logLevel: LogLevel): void;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
nivel de registro | Nivel de registro | La verbosidad que establece para el registro de actividad y error. Puede ser cualquiera de los siguientes valores:
|
Devoluciones:
vacío
función (n, ...)
incremento (n)
Devuelve un valor especial que se puede usar con SetDoc () o UpdateateC () que le dice al servidor que incrementa el valor actual del campo por el valor dado.
Si el operando o el valor de campo actual usa precisión del punto flotante, toda la aritmética sigue la semántica IEEE 754. Si ambos valores son enteros, valores fuera del rango de números seguro 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 procesado por el backend de Firestore, todas las operaciones enteras se limitan entre -2^63 y 2^63-1.
Si el valor de campo actual no es de number
de tipo , 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 |
---|---|---|
norte | número | El valor por el que se incrementará. |
Devoluciones:
El FieldValue
Sentinel para su uso en una llamada a setDoc()
o updateDoc()
función (consulta, ...)
getAggregate (consulta, AggregatesPec)
Calcula las agregaciones especificadas sobre los documentos en el conjunto de resultados de la consulta dada sin descargar realmente los documentos.
Usar esta función para realizar agregaciones es eficiente porque solo se descargan los valores de agregación final, no los datos de los documentos. Esta función puede realizar agregaciones de los documentos en los casos en que el conjunto de resultados es prohibitivamente grande para descargar completamente (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, dbModelType> | La consulta cuyo conjunto de resultados se agregó. |
Agregespec | Aggregatespectype | Un objeto AggregateSpec que especifica los agregados a realizar sobre el conjunto de resultados. El agregado especifica los alias para cada agregado, que se puede utilizar para recuperar el resultado del agregado. |
Devoluciones:
Promise < AggregatequerySnapshot <Aggreatespectype, AppModelType, dbModelType >>
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 descargar realmente los documentos.
El uso de esta función para contar los documentos es eficiente porque solo se descarga el recuento final, no los datos de los documentos. Esta función puede contar los documentos en los casos en que el conjunto de resultados es prohibitivamente grande para descargar 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, dbModelType> | La consulta cuyo tamaño de conjunto de resultados se calcula. |
Devoluciones:
Promise < AggregatequerySnapshot <{Count: Aggregatefield <número>; }, AppModelType, dbModelType >>
Una promesa que se resolverá con el recuento; El recuento se puede recuperar de snapshot.data().count
, donde snapshot
es el AggregateQuerySnapshot
al que se resuelve la promesa devuelta.
getdocs (consulta)
Ejecuta la consulta y devuelve los resultados como una QuerySnapshot .
Todas las consultas son ejecutadas directamente por el servidor, incluso si la consulta se ejecutó previamente. Las modificaciones recientes solo se reflejan en los resultados recuperados si ya han sido aplicados por el backend. Si el cliente está fuera de línea, la operación falla. Para ver los resultados cachorros previamente en caché y las modificaciones locales, use 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, dbModelType> | La Query para ejecutar. |
Devoluciones:
Promise < QUERYSNAPSHOT <AppModelType, dbModelType >>
Una promesa que se resolverá con los resultados de la consulta.
consulta (consulta, compositefilter, consultas de consultas)
Crea una nueva instancia inmutable de consulta que se extiende para incluir también limitaciones 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, dbModelType> | La instancia de consulta para usar como base para las nuevas restricciones. |
filtro compuesto | QueryCompositeFilterConstraint | La consulta para aplicar para aplicar. Crear QueryCompositeFilterConstraint usando y () o () . |
consultas | Consulta [] | Consulta adicional S para aplicar (por ejemplo, Orderby () , límite() ). |
Devoluciones:
Consulta <AppModelType, dbModelType>
Excepciones
Si alguna de las restricciones de consulta proporcionadas no se puede combinar con las restricciones existentes o nuevas.
consulta (consulta, consultas)
Crea una nueva instancia inmutable de consulta que se extiende para incluir también limitaciones 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, dbModelType> | La instancia de consulta para usar como base para las nuevas restricciones. |
consultas | Consulta [] | La lista de consultas s para aplicar. |
Devoluciones:
Consulta <AppModelType, dbModelType>
Excepciones
Si alguna de las restricciones de consulta proporcionadas no se puede combinar con las restricciones existentes o nuevas.
función (consulta degradaciones, ...)
y (consultas)
Crea una nueva consultora de consulta 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 |
---|---|---|
consultas | Restricción de filtro de consulta [] | Opcional. La lista de QueryFilterConstraint s para realizar una conjunción para. Estos deben crearse con llamadas a donde () , o() , o y() . |
Devoluciones:
QueryCompositeFilterConstraint
La recién creada QueryCompositeFilterConstraint .
o (consultas de consultas)
Crea una nueva consultora de consultas de consulta 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 |
---|---|---|
consultas | Restricción de filtro de consulta [] | Opcional. La lista de QueryFilterConstraint s para realizar una disyunción para. Estos deben crearse con llamadas a donde () , o() , o y() . |
Devoluciones:
QueryCompositeFilterConstraint
La recién creada QueryCompositeFilterConstraint .
función (referencia, ...)
addDoc (referencia, datos)
Agregue un nuevo documento a CollectionReference
especificado con los datos dados, asignándole una ID de documento automáticamente.
El resultado de esta escritura solo se reflejará en lecturas de documentos que ocurren después de que la promesa devuelta se resuelve. Si el cliente está fuera de línea, la escritura falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
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 | ColecciónReferencia <AppModelType, dbModelType> | Una referencia a la colección para agregar este documento. |
datos | WithfieldValue <ppModelType> | Un objeto que contiene los datos para el nuevo documento. |
Devoluciones:
Promise < documentReference <AppModelType, dbModelType >>
Una Promise
resuelta con una DocumentReference
que apunta al documento recién creado después de haber sido escrito en el backend.
Excepciones
Error: si la entrada proporcionada no es un documento de Firestore válido.
Colección (referencia, ruta, rathsegments)
Obtiene una instancia CollectionReference
que se refiere a una subcolección de reference
en la ruta 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 | ColecciónReferencia <AppModelType, dbModelType> | Una referencia a una colección. |
camino | cadena | Una ruta de acceso a una colección separada por barras diagonales. |
segmentos de ruta | cadena[] | Segmentos de ruta adicionales para aplicar en relación con el primer argumento. |
Devoluciones:
ColecciónReferencia < DocumentData , DocumentData >
La instancia CollectionReference
.
Excepciones
Si la ruta final tiene un número par de segmentos y no apunta a una colección.
Colección (referencia, ruta, rathsegments)
Obtiene una instancia CollectionReference
que se refiere a una subcolección de reference
en la ruta 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 | Referencia de documento <AppModelType, dbModelType> | Una referencia a un documento de Firestore. |
camino | cadena | Una ruta de acceso a una colección separada por barras diagonales. |
segmentos de ruta | cadena[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Devoluciones:
ColecciónReferencia < DocumentData , DocumentData >
La instancia CollectionReference
.
Excepciones
Si la ruta final tiene un número par de segmentos y no apunta a una colección.
Deletedoc (referencia)
Elimina el documento mencionado por la DocumentReference
especificado .
La eliminación solo se reflejará en las lecturas de documentos que ocurren después de que la promesa devuelta se resuelve. Si el cliente está fuera de línea, el Delete falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
Firma:
export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
referencia | Referencia de documento <AppModelType, dbModelType> | Una referencia al documento para eliminar. |
Devoluciones:
Promesa<nulo>
Una Promise
resuelta una vez que el documento se ha eliminado con éxito del backend.
DOC (referencia, ruta, ruta)
Obtiene una instancia DocumentReference
que se refiere a un documento dentro de la reference
en la ruta relativa especificada. Si no se especifica una ruta, se utilizará una ID única generada automáticamente para la DocumentReference
devuelto .
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 | ColecciónReferencia <AppModelType, dbModelType> | Una referencia a una colección. |
camino | cadena | Un camino separado por barras a un documento. Debe omitirse para usar IDS generados automáticamente. |
segmentos de ruta | cadena[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Devoluciones:
Referencia de documento <AppModelType, dbModelType>
La instancia DocumentReference
.
Excepciones
Si la ruta final tiene un número impar de segmentos y no apunta a un documento.
DOC (referencia, ruta, ruta)
Obtiene una instancia DocumentReference
que se refiere a un documento dentro de la reference
en la ruta 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 | Referencia de documento <AppModelType, dbModelType> | Una referencia a un documento de Firestore. |
camino | cadena | Un camino separado por barras a un documento. |
segmentos de ruta | cadena[] | Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento. |
Devoluciones:
Referencia de documento < DocumentData , DocumentData >
La instancia DocumentReference
.
Excepciones
Si la ruta final tiene un número impar de segmentos y no apunta a un documento.
getDoc (referencia)
Lee el documento mencionado por la referencia del documento especificada.
Todos los documentos se obtienen directamente del servidor, incluso si el documento se leyó o modificó previamente. Las modificaciones recientes solo se reflejan en el DocumentSnapshot
recuperado si el backend ya las ha aplicado. Si el cliente está fuera de línea, la lectura falla. Si desea usar el almacenamiento en caché o ver modificaciones locales, utilice el SDK completo Firestore.
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 | Referencia de documento <AppModelType, dbModelType> | La referencia del documento para buscar. |
Devoluciones:
Promise < DocumentsNapshot <AppModelType, dbModelType >>
Una promesa resuelta con un DocumentSnapshot
que contiene el contenido actual del documento.
setDoc (referencia, datos)
Escritos en el documento mencionado por la DocumentReference
especificada . Si el documento aún no existe, se creará.
El resultado de esta escritura solo se reflejará en lecturas de documentos que ocurren después de que la promesa devuelta se resuelve. Si el cliente está fuera de línea, la escritura falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
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 | Referencia de documento <AppModelType, dbModelType> | Una referencia al documento para escribir. |
datos | WithfieldValue <ppModelType> | Un mapa de los campos y valores del documento. |
Devoluciones:
Promesa<nulo>
Una Promise
resuelta una vez que los datos se han escrito con éxito en el backend.
Excepciones
Error: si la entrada proporcionada no es un documento de Firestore válido.
setDoc (referencia, datos, opciones)
Escritos en el documento mencionado por la DocumentReference
especificada . Si el documento aún no existe, se creará. Si proporciona merge
o mergeFields
, los datos proporcionados se pueden fusionar en un documento existente.
El resultado de esta escritura solo se reflejará en lecturas de documentos que ocurren después de que la promesa devuelta se resuelve. Si el cliente está fuera de línea, la escritura falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
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 | Referencia de documento <AppModelType, dbModelType> | Una referencia al documento para escribir. |
datos | Parcialwithfieldvalue <ppModelType> | Un mapa de los campos y valores del documento. |
opciones | Establecer opciones | Un objeto para configurar el comportamiento establecido. |
Devoluciones:
Promesa<nulo>
Una Promise
resuelta una vez que los datos se han escrito con éxito en el backend.
Excepciones
Error: si la entrada proporcionada no es un documento de Firestore válido.
UpdateDoc (referencia, datos)
Actualizaciones de campos en el documento mencionado por la DocumentReference
especificada . 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 ocurren después de que la promesa devuelta se resuelve. Si el cliente está fuera de línea, la actualización falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
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 | Referencia de documento <AppModelType, dbModelType> | Una referencia al documento para actualizar. |
datos | Actualizar datos <DbModelType> | Un objeto que contiene los campos y valores para actualizar el documento. Los campos pueden contener puntos para hacer referencia a campos anidados dentro del documento. |
Devoluciones:
Promesa<nulo>
Una Promise
resuelta una vez que los datos se han escrito con éxito en el backend.
Excepciones
Error: si la entrada proporcionada no son datos de Firestore válidos.
UpdateatedOC (referencia, campo, valor, MoreFieldsand Values)
Actualizaciones de campos en el documento mencionado por la DocumentReference
especificada La actualización fallará si se aplica a un documento que no existe.
Los campos anidados se pueden actualizar proporcionando cadenas de ruta de campo separadas por DOT o proporcionando objetos FieldPath
.
El resultado de esta actualización solo se reflejará en las lecturas de documentos que ocurren después de que la promesa devuelta se resuelve. Si el cliente está fuera de línea, la actualización falla. Si desea ver modificaciones locales o escrituras de búfer hasta que el cliente esté en línea, use el SDK completo de Firestore.
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 | Referencia de documento <AppModelType, dbModelType> | Una referencia al documento para actualizar. |
campo | cadena | Ruta de campo | El primer campo para actualizar. |
valor | desconocido | El primer valor. |
Más Fieldsand Values | desconocido[] | Pares de valor clave adicionales. |
Devoluciones:
Promesa<nulo>
Una Promise
resuelta una vez que los datos se han escrito con éxito 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 consulta de consulta que modifica el resultado establecido para finalizar en el documento proporcionado (inclusive). La posición final es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el pedido 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 | Instantánea del documento <AppModelType, dbModelType> | La instantánea del documento para terminar. |
Devoluciones:
Una consulta de la Constalación para pasar a query()
Endbefore (instantánea)
Crea una consulta de consulta que modifica el resultado establecido para finalizar antes del documento proporcionado (exclusivo). La posición final es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el pedido 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 | Instantánea del documento <AppModelType, dbModelType> | La instantánea del documento para terminar antes. |
Devoluciones:
Una consulta de la Constalación para pasar a query()
startafter (instantánea)
Crea una consulta de consulta que modifica el resultado establecido para comenzar 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 pedido 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 | Instantánea del documento <AppModelType, dbModelType> | La instantánea del documento para comenzar después. |
Devoluciones:
Una consulta de query()
startat (instantánea)
Crea una consulta de consulta que modifica el resultado establecido para comenzar 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 el 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 | Instantánea del documento <AppModelType, dbModelType> | La instantánea del documento para comenzar. |
Devoluciones:
Una consulta de query()
.
AddprefyteCkokeys
Devuelve un nuevo mapa donde cada clave tiene el prefijo con la tecla externa adjunta 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
que son apoyados por Firestore.
Firma:
export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;
Datos de especificación agregados
Un tipo cuyas claves están tomadas de un AggregateSpec
, y cuyos valores son el resultado de la agregación realizada por el AggregateField
correspondiente desde la entrada AggregateSpec
.
Firma:
export declare type AggregateSpecData<T extends AggregateSpec> = {
[P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};
AgregateType
Tipo de unión que representa el tipo agregado a realizar.
Firma:
export declare type AggregateType = 'count' | 'avg' | 'sum';
Childupdatefields
Ayudante para calcular los campos anidados para un tipo dado T1. Esto es necesario para distribuir tipos de sindicatos como undefined | {...}
(sucede para accesorios opcionales) o {a: A} | {b: B}
.
En este caso de uso, V
se usa para distribuir los tipos de la Unión de T[K]
en Record
, ya que T[K]
se evalúa como una expresión y no se distribuye.
Ver https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-condicional-types
Firma:
export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;
FirestoreErrorCode
El conjunto de códigos de estado de Firestore. Los códigos son los mismos en los expuestos por GRPC aquí: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md
Valores posibles: - 'cancelado': la operación fue cancelada (generalmente por la persona que llama). - 'Desconocido': error desconocido o un error de un dominio de error diferente. - 'Argumento no válido': el cliente especificó un argumento no válido. Tenga en cuenta que esto difiere de la "precondición fallida". El "argumento no válido" indica argumentos que son problemáticos independientemente del estado del sistema (por ejemplo, un nombre de campo no válido). - 'Proporcionado con la fecha límite': la fecha límite expiró antes de que la operación pudiera completarse. Para las operaciones que cambian el estado del sistema, este error puede devolverse incluso si la operación se ha completado con éxito. Por ejemplo, una respuesta exitosa de un servidor podría haberse retrasado el tiempo suficiente para que expire la fecha límite. - 'No se encontró': no se encontró algún documento solicitado. - 'ya existe': algún documento que intentamos crear ya existe. - 'Renado por permiso': la persona que llama no tiene permiso para ejecutar la operación especificada. -'recursos exhaustados': algunos recursos se han agotado, tal vez una cuota por usuario, o tal vez todo el sistema de archivos está fuera de espacio. - 'Precondición fallida': la operación fue rechazada porque el sistema no está en un estado requerido para la ejecución de la operación. - 'abortado': la operación fue abortada, generalmente debido a un problema de concurrencia como los abortos de transacción, etc.- 'fuera de rango': la operación se intentó más allá del rango válido. - 'no implementado': la operación no se implementa o no es compatible/habilitada. - 'interno': errores internos. Significa que algunos invariantes esperados por el sistema subyacente se han roto. Si ve uno de estos errores, algo está muy roto. - 'no disponible': el servicio no está disponible actualmente. Es muy probable que sea una condición transitoria y pueda corregirse reintando con un retroceso. - 'La pérdida de datos': pérdida de datos o corrupción irrecuperables. - 'no autenticado': 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 (por ejemplo, 'bar'), encuentre todas las claves anidadas (por ejemplo, { 'Bar.Baz': T1, 'Bar.qux': T2 } ). Intersectlos juntos para hacer un solo mapa que contenga todas las teclas posibles que están 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]>;
OrderByDirection
La dirección de una cláusula Orderby () se especifica como 'DESC' o 'ASC' (descendente o ascendente).
Firma:
export declare type OrderByDirection = 'desc' | 'asc';
Parcialwithfieldvalue
Similar al Partial<T>
, pero permite que se omitan los campos anidados y se transfieran los valores de campo 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);
Primitivo
Tipos primitivos.
Firma:
export declare type Primitive = string | number | boolean | undefined | null;
Consultyconstrainttype
Describe las diferentes restricciones de consulta disponibles en este SDK.
Firma:
export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';
Restricción de filtro de consulta
QueryFilterConstraint
es un tipo de unión auxiliar que representa QueryFieldFilterConstraint y QueryCompositeFilterConstraint .
Firma:
export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;
Consulta
QueryNonFilterConstraint
es un tipo de unión auxiliar que representa la consulta de consultas que se utilizan para reducir o ordenar el conjunto de documentos, pero que no se filtran explícitamente en un campo de documento. QueryNonFilterConstraint
S se crean invocando Orderby () , Empieza en() , startafter () , endbefore () , termina en() , Limit () o Limittolast () y luego se puede pasar a la consulta () para crear una nueva instancia de consulta que también contenga la QueryConstraint
.
Firma:
export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;
Establecer opciones
Un objeto de opciones que configura el comportamiento de setDoc () , y llamadas. Estas llamadas se pueden configurar para realizar fusiones granulares en lugar de sobrescribir los documentos de destino en su totalidad proporcionando un SetOptions
con merge: true
.
Firma:
export declare type SetOptions = {
readonly merge?: boolean;
} | {
readonly mergeFields?: Array<string | FieldPath>;
};
unión a la intersección
Dado un tipo de unión U = T1 | T2 | ...
, devuelve un tipo intersectado (T1 & T2 & ...)
.
Utiliza tipos condicionales distributivos e inferencia de tipos condicionales. Esto funciona porque múltiples candidatos para la misma variable de tipo en posiciones contrahariantes hace que se infiera un tipo de intersección. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-condicional-types https://stackoverflow.com/Questions/50374908/transform-union-type-ing-inger -tipo
Firma:
export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
Actualizar datos
Actualizar datos (para usar con actualateC () ) que consiste en rutas de campo (por ejemplo, 'foo' o 'foo.baz') asignadas a valores. Los campos que contienen puntos de referencia a los campos anidados dentro del documento. Los valores de campo 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 donde () se especifican utilizando las cadenas '& lt;', '& lt; =', '==', '! =', '& Gt; =', '& gt;', 'Array-Contains' , 'en', 'Array-Contains-Anhy' y 'Not-In'.
Firma:
export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';
WithfieldValue
Permite que los valores de campo se pasen como valor de propiedad mientras se mantiene la seguridad del tipo.
Firma:
export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
[K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);