Un lote de escrituras, que se usa para realizar múltiples 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().
Firma:
export declare class WriteBatch
Métodos
Método | Teclas modificadoras | Descripción |
---|---|---|
commit() | Confirma todas las escrituras de este lote de escrituras como una sola unidad atómica.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. | |
delete(documentRef) | Borra el documento al que hace referencia la DocumentReference proporcionada. | |
set(documentRef, datos) | Escribe en el documento al que hace referencia la DocumentReference proporcionada. Si el documento aún no existe, se creará. | |
set(documentRef, datos, opciones) | Escribe en el documento al que hace referencia la DocumentReference proporcionada. Si el documento aún no existe, se creará. Si proporcionas merge o mergeFields , los datos proporcionados se pueden combinar en un documento existente. |
|
update(documentRef, datos) | Actualiza los campos del documento al que hace referencia la DocumentReference proporcionada. La actualización fallará si se aplica a un documento que no existe. | |
update(documentRef, field, value, moreFieldsAndValues) | Actualiza los campos del documento al que hace referencia esta DocumentReference. 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 . |
WriteBatch.commit()
Confirma todas las escrituras de este lote de escrituras como una sola unidad atómica.
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:
commit(): Promise<void>;
Muestra:
Promesa<void>
Se resuelve una Promise
una vez que todas las escrituras del lote se escribieron de forma correcta en el backend como una unidad atómica (ten en cuenta que no se resolverá mientras estés sin conexión).
WriteBatch.delete()
Borra el documento al que hace referencia la DocumentReference proporcionada.
Firma:
delete<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
DocumentRef | DocumentReference<AppModelType, DbModelType> | Una referencia al documento que se borrará. |
Muestra:
Esta instancia de WriteBatch
. Se usa para encadenar llamadas a métodos.
WriteBatch.set()
Escribe en el documento al que hace referencia la DocumentReference proporcionada. Si el documento aún no existe, se creará.
Firma:
set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
DocumentRef | DocumentReference<AppModelType, DbModelType> | Una referencia al documento que se debe establecer. |
datos | WithFieldValue<AppModelType> | Un objeto de los campos y valores del documento. |
Muestra:
Esta instancia de WriteBatch
. Se usa para encadenar llamadas a métodos.
WriteBatch.set()
Escribe en el documento al que hace referencia la DocumentReference proporcionada. Si el documento aún no existe, se creará. Si proporcionas merge
o mergeFields
, los datos proporcionados se pueden combinar en un documento existente.
Firma:
set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
DocumentRef | DocumentReference<AppModelType, DbModelType> | Una referencia al documento que se debe establecer. |
datos | PartialWithFieldValue<AppModelType> | Un objeto de los campos y valores del documento. |
opciones | SetOptions | Un objeto para configurar el comportamiento establecido. |
Muestra:
Esta instancia de WriteBatch
. Se usa para encadenar llamadas a métodos.
Excepciones
Error: Si la entrada proporcionada no es un documento de Firestore válido.
WriteBatch.update()
Actualiza los campos del documento al que hace referencia la DocumentReference proporcionada. La actualización fallará si se aplica a un documento que no existe.
Firma:
update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
DocumentRef | DocumentReference<AppModelType, DbModelType> | 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:
Esta instancia de WriteBatch
. Se usa para encadenar llamadas a métodos.
Excepciones
Error: Si la entrada proporcionada no son datos de Firestore válidos.
WriteBatch.update()
Actualiza los campos del documento al que hace referencia esta DocumentReference. 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
.
Firma:
update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): WriteBatch;
Parámetros
Parámetro | Tipo | Descripción |
---|---|---|
DocumentRef | DocumentReference<AppModelType, DbModelType> | 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:
Esta instancia de WriteBatch
. Se usa para encadenar llamadas a métodos.
Excepciones
Error: Si la entrada proporcionada no son datos de Firestore válidos.