Tek bir atom birimi olarak birden fazla yazma işlemi gerçekleştirmek için kullanılan yazma grubu.
WriteBatch
nesnesi, WriteBatch() çağrısı yapılarak edinilebilir. Yazma grubuna yazma ekleme yöntemleri sunar. WriteBatch.commit() çağrılmadığı sürece yazmaların hiçbiri kaydedilmez (veya yerel olarak görünür).
İmza:
export declare class WriteBatch
Yöntemler
Yöntem | Değiştiriciler | Açıklama |
---|---|---|
commit() | Bu yazma grubundaki tüm yazma işlemlerini tek bir atom birimi olarak kaydeder.Bu yazma işlemlerinin sonucu yalnızca döndürülen taahhüt tamamlandıktan sonra gerçekleşen belge okumalarına yansıtılır. İstemci çevrimdışıysa yazma işlemi başarısız olur. İstemci internete bağlanana kadar yerel değişiklikleri veya arabellek yazmalarını görmek isterseniz Firestore SDK'sının tamamını kullanın. | |
delete(documentRef) | Sağlanan DocumentReference tarafından atıfta bulunulan dokümanı siler. | |
set(documentRef, data) | Sağlanan DocumentReference tarafından atıfta bulunulan belgeye yazar. Doküman henüz yoksa oluşturulur. | |
set(documentRef, data, options) | Sağlanan DocumentReference tarafından atıfta bulunulan belgeye yazar. Doküman henüz yoksa oluşturulur. merge veya mergeFields sağlarsanız, sağlanan veriler mevcut bir belgede birleştirilebilir. |
|
update(documentRef, data) | Sağlanan DocumentReference tarafından atıfta bulunulan belgedeki alanları günceller. Mevcut olmayan bir dokümana uygulanırsa güncelleme başarısız olur. | |
update(documentRef, domain, value, moreFieldsAndValues) | Bu DocumentReference tarafından atıfta bulunulan belgedeki alanları günceller. Mevcut olmayan bir dokümana uygulanırsa güncelleme başarısız olur.İç içe yerleştirilmiş alanlar, noktayla ayrılmış alan yolu dizeleri sağlayarak veya FieldPath nesneleri sağlanarak güncellenebilir. |
WriteBatch.commit()
Bu yazma grubundaki tüm yazmaları tek bir atom birimi olarak kaydeder.
Bu yazma işlemlerinin sonucu, yalnızca döndürülen taahhüt tamamlandıktan sonra gerçekleşen belge okumalarına yansıtılır. İstemci çevrimdışıysa yazma işlemi başarısız olur. İstemci internete bağlanana kadar yerel değişiklikleri veya arabellek yazmalarını görmek isterseniz Firestore SDK'sının tamamını kullanın.
İmza:
commit(): Promise<void>;
Şunu döndürür:
Taahhüt<void>
Gruptaki tüm yazmalar arka uca atom birimi olarak başarıyla yazıldıktan sonra Promise
öğesi çözüldü (çevrimdışı olduğunuzda çözümlenmeyeceğini unutmayın).
WriteBatch.delete()
Sağlanan DocumentReference tarafından atıfta bulunulan dokümanı siler.
İmza:
delete<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>): WriteBatch;
Parametreler
Parametre | Tür | Açıklama |
---|---|---|
belgeRef. | DocumentReference<AppModelType, DbModelType> | Silinecek doküman için bir başvuru. |
Şunu döndürür:
Bu WriteBatch
örneği. Zincirleme yöntemi çağrıları için kullanılır.
WriteBatch.set()
Sağlanan DocumentReference tarafından atıfta bulunulan belgeye yazar. Doküman henüz yoksa oluşturulur.
İmza:
set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): WriteBatch;
Parametreler
Parametre | Tür | Açıklama |
---|---|---|
belgeRef. | DocumentReference<AppModelType, DbModelType> | Ayarlanacak doküman için bir referans. |
veri | WithFieldValue<AppModelType> | Dokümanla ilgili alanların ve değerlerin nesnesi. |
Şunu döndürür:
Bu WriteBatch
örneği. Zincirleme yöntemi çağrıları için kullanılır.
WriteBatch.set()
Sağlanan DocumentReference tarafından atıfta bulunulan belgeye yazar. Doküman henüz yoksa oluşturulur. merge
veya mergeFields
sağlarsanız, sağlanan veriler mevcut bir belgede birleştirilebilir.
İmza:
set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): WriteBatch;
Parametreler
Parametre | Tür | Açıklama |
---|---|---|
belgeRef. | DocumentReference<AppModelType, DbModelType> | Ayarlanacak doküman için bir referans. |
veri | partWithFieldValue<AppModelType> | Dokümanla ilgili alanların ve değerlerin nesnesi. |
seçenekler | SetOptions | Belirlenen davranışı yapılandıracak bir nesne. |
Şunu döndürür:
Bu WriteBatch
örneği. Zincirleme yöntemi çağrıları için kullanılır.
İstisnalar
Hata - Sağlanan giriş geçerli bir Firestore belgesi değilse.
WriteBatch.update()
Sağlanan DocumentReference tarafından atıfta bulunulan belgedeki alanları günceller. Mevcut olmayan bir dokümana uygulanırsa güncelleme başarısız olur.
İmza:
update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): WriteBatch;
Parametreler
Parametre | Tür | Açıklama |
---|---|---|
belgeRef. | DocumentReference<AppModelType, DbModelType> | Güncellenecek doküman için bir referans. |
veri | UpdateData<DbModelType> | Dokümanın güncelleneceği alanları ve değerleri içeren bir nesne. Alanlar, doküman içindeki iç içe yerleştirilmiş alanlara referans vermek için noktalar içerebilir. |
Şunu döndürür:
Bu WriteBatch
örneği. Zincirleme yöntemi çağrıları için kullanılır.
İstisnalar
Hata - Sağlanan giriş geçerli Firestore verileri değilse.
WriteBatch.update()
Bu DocumentReference tarafından atıfta bulunulan belgedeki alanları günceller. Mevcut olmayan bir dokümana uygulanırsa güncelleme başarısız olur.
İç içe geçmiş alanlar, noktayla ayrılmış alan yolu dizeleri veya FieldPath
nesneleri sağlanarak güncellenebilir.
İmza:
update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): WriteBatch;
Parametreler
Parametre | Tür | Açıklama |
---|---|---|
belgeRef. | DocumentReference<AppModelType, DbModelType> | Güncellenecek doküman için bir referans. |
alan | dize | FieldPath | Güncellenecek ilk alan. |
value | bilinmiyor | İlk değer. |
diğerAlanlarVeDeğerler | bilinmiyor[] | Ek anahtar/değer çiftleri. |
Şunu döndürür:
Bu WriteBatch
örneği. Zincirleme yöntemi çağrıları için kullanılır.
İstisnalar
Hata - Sağlanan giriş geçerli Firestore verileri değilse.