@firebase/firestore

Fungsi

Fungsi Keterangan
fungsi(aplikasi, ...)
dapatkanFirestore(aplikasi) Mengembalikan instance Firestore default yang ada dan dikaitkan dengan FirebaseApp yang disediakan . Jika tidak ada instance, inisialisasi instance baru dengan pengaturan default.
getFirestore(aplikasi, databaseId) (BETA) Mengembalikan instance Firestore bernama yang sudah ada dan dikaitkan dengan FirebaseApp yang disediakan . Jika tidak ada instance, inisialisasi instance baru dengan pengaturan default.
inisialisasiFirestore(aplikasi, pengaturan, databaseId) Menginisialisasi instance Firestore baru dengan pengaturan yang disediakan. Hanya dapat dipanggil sebelum fungsi lainnya, termasuk getFirestore() . Jika pengaturan khusus kosong, fungsi ini sama dengan memanggil getFirestore() .
fungsi(penyimpanan api, ...)
clearIndexedDbPersistence(firestore) Menghapus penyimpanan persisten. Ini termasuk penulisan yang tertunda dan dokumen yang disimpan dalam cache. Harus dipanggil saat instance Firestore belum dimulai (setelah aplikasi dihentikan atau saat aplikasi pertama kali diinisialisasi). Saat startup, fungsi ini harus dipanggil sebelum fungsi lainnya (selain inisialisasiFirestore() atau getFirestore() )). Jika instance Firestore masih berjalan, janji akan ditolak dengan kode kesalahan failed-precondition . Catatan: clearIndexedDbPersistence() terutama ditujukan untuk membantu menulis pengujian andal yang menggunakan Cloud Firestore. Ini menggunakan mekanisme yang efisien untuk menghapus data yang ada tetapi tidak mencoba untuk menimpa secara aman atau membuat data cache tidak dapat dipulihkan. Untuk aplikasi yang sensitif terhadap pengungkapan data cache di antara sesi pengguna, kami sangat menyarankan untuk tidak mengaktifkan persistensi sama sekali.
koleksi (firestore, jalur, segmen jalur) Mendapatkan instance CollectionReference yang merujuk ke koleksi di jalur absolut yang ditentukan.
collectionGroup(firestore, collectionId) Membuat dan mengembalikan instance Query baru yang menyertakan semua dokumen dalam database yang terdapat dalam koleksi atau subkoleksi dengan collectionId yang diberikan.
connectFirestoreEmulator(firestore, host, port, opsi) Ubah instance ini untuk berkomunikasi dengan emulator Cloud Firestore. Catatan: Ini harus dipanggil sebelum instance ini digunakan untuk melakukan operasi apa pun.
nonaktifkan Jaringan (firestore) Menonaktifkan penggunaan jaringan untuk instance ini. Itu dapat diaktifkan kembali melalui aktifkanNetwork() . Saat jaringan dinonaktifkan, semua pemroses snapshot, panggilan getDoc() atau getDocs() akan mengembalikan hasil dari cache, dan operasi penulisan apa pun akan dimasukkan ke dalam antrean hingga jaringan dipulihkan.
doc(firestore, jalur, segmen jalur) Mendapatkan instance DocumentReference yang merujuk ke dokumen pada jalur absolut yang ditentukan.
aktifkanIndexedDbPersistence(firestore, persistenceSettings) Upaya untuk mengaktifkan penyimpanan persisten, jika memungkinkan. Jika gagal, enableIndexedDbPersistence() akan menolak janji atau memberikan pengecualian. Ada beberapa alasan mengapa ini bisa gagal, yang dapat diidentifikasi dari code pada kesalahan tersebut. * prasyarat gagal: Aplikasi sudah terbuka di tab browser lain. * tidak diterapkan: Browser tidak kompatibel dengan implementasi persistensi offline. Perhatikan bahwa bahkan setelah kegagalan, instance Firestore akan tetap dapat digunakan, namun persistensi offline akan dinonaktifkan. Catatan: enableIndexedDbPersistence() harus dipanggil sebelum fungsi lainnya (selain inisialisasiFirestore() , getFirestore() atau clearIndexedDbPersistence() . Persistensi tidak dapat digunakan di lingkungan Node.js.
aktifkanMultiTabIndexedDbPersistence(firestore) Mencoba mengaktifkan penyimpanan persisten multi-tab, jika memungkinkan. Jika diaktifkan di semua tab, semua operasi berbagi akses ke persistensi lokal, termasuk eksekusi kueri bersama dan pembaruan dokumen lokal dengan kompensasi latensi di semua instans yang terhubung. Jika gagal, enableMultiTabIndexedDbPersistence() akan menolak janji atau memberikan pengecualian. Ada beberapa alasan mengapa ini bisa gagal, yang dapat diidentifikasi dari code pada kesalahan tersebut. * Prakondisi gagal: Aplikasi sudah terbuka di tab browser lain dan multi-tab tidak diaktifkan. * tidak diterapkan: Browser tidak kompatibel dengan implementasi persistensi offline. Perhatikan bahwa bahkan setelah kegagalan, instance Firestore akan tetap dapat digunakan, namun persistensi offline akan dinonaktifkan.
aktifkan Jaringan (firestore) Mengaktifkan kembali penggunaan jaringan untuk instance Firestore ini setelah panggilan sebelumnya kedisableNetwork() .
dapatkanPersistentCacheIndexManager(firestore) Mengembalikan Manajer Indeks PersistentCache yang digunakan oleh objek Firestore tertentu. Instance PersistentCacheIndexManager , atau null jika penyimpanan persisten lokal tidak digunakan.
loadBundle(firestore, bundleData) Memuat paket Firestore ke dalam cache lokal.
bernamaQuery(firestore, nama) Membaca Kueri Firestore dari cache lokal, yang diidentifikasi dengan nama yang diberikan. Kueri yang diberi nama dikemas ke dalam bundel di sisi server (bersama dengan dokumen yang dihasilkan), dan dimuat ke cache lokal menggunakan loadBundle . Setelah berada di cache lokal, gunakan metode ini untuk mengekstrak Kueri berdasarkan nama.
onSnapshotsInSync(firestore, pengamat) Melampirkan pendengar untuk peristiwa snapshot-in-sync. Peristiwa snapshot-in-sync menunjukkan bahwa semua pemroses yang terpengaruh oleh perubahan tertentu telah diaktifkan, meskipun satu perubahan yang dihasilkan server memengaruhi beberapa pemroses. CATATAN: Peristiwa snapshot-in-sync hanya menunjukkan bahwa pendengar sinkron satu sama lain, namun tidak berkaitan dengan apakah snapshot tersebut sinkron dengan server. Gunakan SnapshotMetadata di masing-masing pendengar untuk menentukan apakah snapshot berasal dari cache atau server.
onSnapshotsInSync(firestore, onSync) Melampirkan pendengar untuk peristiwa snapshot-in-sync. Peristiwa snapshot-in-sync menunjukkan bahwa semua pemroses yang terpengaruh oleh perubahan tertentu telah diaktifkan, meskipun satu perubahan yang dihasilkan server memengaruhi beberapa pemroses. CATATAN: Peristiwa snapshot-in-sync hanya menunjukkan bahwa pendengar sinkron satu sama lain, namun tidak berkaitan dengan apakah snapshot tersebut sinkron dengan server. Gunakan SnapshotMetadata di masing-masing pendengar untuk menentukan apakah snapshot berasal dari cache atau server.
runTransaction(firestore, updateFunction, opsi) Mengeksekusi updateFunction yang diberikan dan kemudian mencoba melakukan perubahan yang diterapkan dalam transaksi. Jika ada dokumen yang dibaca dalam transaksi yang berubah, Cloud Firestore akan mencoba kembali updateFunction . Jika gagal dilakukan setelah 5 kali mencoba, transaksi gagal. Jumlah maksimum penulisan yang diperbolehkan dalam satu transaksi adalah 500.
setIndexConfiguration(firestore, konfigurasi) (BETA) Mengonfigurasi pengindeksan untuk eksekusi kueri lokal. Konfigurasi indeks sebelumnya akan diganti. Promise ini terselesaikan setelah konfigurasi indeks dipertahankan. Entri indeks itu sendiri dibuat secara asinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan meskipun indeks belum tersedia. Eksekusi kueri akan secara otomatis mulai menggunakan indeks setelah entri indeks ditulis. Indeks hanya didukung dengan persistensi IndexedDb. Jika IndexedDb tidak diaktifkan, konfigurasi indeks apa pun akan diabaikan.
setIndexConfiguration(firestore,json) (BETA) Mengonfigurasi pengindeksan untuk eksekusi kueri lokal. Konfigurasi indeks sebelumnya akan diganti. Promise ini terselesaikan setelah konfigurasi indeks dipertahankan. Entri indeks itu sendiri dibuat secara asinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan meskipun indeks belum tersedia. Eksekusi kueri akan secara otomatis mulai menggunakan indeks setelah entri indeks ditulis. Indeks hanya didukung dengan persistensi IndexedDb. Panggil enableIndexedDbPersistence() atau enableMultiTabIndexedDbPersistence() sebelum menyetel konfigurasi indeks. Jika IndexedDb tidak diaktifkan, konfigurasi indeks apa pun akan diabaikan. Metode ini menerima format JSON yang diekspor oleh Firebase CLI ( firebase firestore:indexes ). Jika format JSON tidak valid, metode ini akan menimbulkan kesalahan.
mengakhiri (firestore) Menghentikan instance Firestore yang disediakan. Setelah memanggil terminate() hanya fungsi clearIndexedDbPersistence() yang dapat digunakan. Fungsi lainnya akan memunculkan FirestoreError . Untuk memulai ulang setelah penghentian, buat instance baru FirebaseFirestore dengan getFirestore() . Penghentian tidak membatalkan penulisan apa pun yang tertunda, dan janji apa pun yang menunggu respons dari server tidak akan diselesaikan. Jika Anda mengaktifkan persistensi, saat berikutnya Anda memulai instans ini, instans ini akan melanjutkan pengiriman penulisan ini ke server. Catatan: Dalam keadaan normal, pemanggilan terminate() tidak diperlukan. Fungsi ini hanya berguna ketika Anda ingin memaksa instance ini melepaskan semua sumber dayanya atau dikombinasikan dengan clearIndexedDbPersistence() untuk memastikan bahwa semua status lokal dimusnahkan di antara pengujian yang dijalankan.
tungguForPendingWrites(firestore) Menunggu hingga semua penulisan yang tertunda untuk pengguna aktif telah diakui oleh backend. Janji yang dikembalikan akan segera teratasi jika tidak ada penulisan yang belum diselesaikan. Jika tidak, janji akan menunggu semua penulisan yang dikeluarkan sebelumnya (termasuk penulisan di sesi aplikasi sebelumnya), namun tidak menunggu penulisan yang ditambahkan setelah fungsi dipanggil. Jika Anda ingin menunggu penulisan tambahan, panggil waitForPendingWrites() lagi. Janji waitForPendingWrites() yang belum dibayar akan ditolak selama perubahan pengguna.
tulisBatch(firestore) Membuat kumpulan tulis, digunakan untuk melakukan beberapa penulisan sebagai satu operasi atom. Jumlah maksimum penulisan yang diperbolehkan dalam satu WriteBatch adalah 500. Tidak seperti transaksi, kumpulan tulis disimpan secara offline dan oleh karena itu lebih disukai bila Anda tidak perlu mengkondisikan penulisan Anda pada data yang sudah dibaca.
fungsi()
menghitung() Buat objek AggregateField yang dapat digunakan untuk menghitung jumlah dokumen dalam kumpulan hasil kueri.
hapusField() Mengembalikan sentinel untuk digunakan dengan updateDoc() atau setDoc() dengan {merge: true} untuk menandai bidang yang akan dihapus.
ID dokumen() Mengembalikan FieldPath sentinel khusus untuk merujuk ke ID dokumen. Ini dapat digunakan dalam kueri untuk mengurutkan atau memfilter berdasarkan ID dokumen.
dapatkan Firestore() Mengembalikan instance Firestore default yang ada dan dikaitkan dengan FirebaseApp default . Jika tidak ada instance, inisialisasi instance baru dengan pengaturan default.
memoryEagerGarbageCollector() Membuat instance MemoryEagerGarbageCollector . Ini juga merupakan pengumpul sampah default kecuali ditentukan lain secara eksplisit.
persistenMultipleTabManager() Membuat sebuah instance dari PersistentMultipleTabManager .
server Stempel Waktu() Mengembalikan sentinel yang digunakan dengan setDoc() atau updateDoc() untuk menyertakan stempel waktu yang dibuat server dalam data tertulis.
fungsi(databaseId, ...)
dapatkanFirestore(databaseId) (BETA) Mengembalikan instance Firestore bernama yang sudah ada dan dikaitkan dengan FirebaseApp default . Jika tidak ada instance, inisialisasi instance baru dengan pengaturan default.
fungsi(elemen, ...)
arrayHapus(elemen) Mengembalikan nilai khusus yang dapat digunakan dengan setDoc() atau yang memberitahu server untuk menghapus elemen tertentu dari nilai array apa pun yang sudah ada di server. Semua instance dari setiap elemen yang ditentukan akan dihapus dari array. Jika bidang yang diubah belum berupa array, maka akan ditimpa dengan array kosong.
arrayUnion(elemen) Mengembalikan nilai khusus yang dapat digunakan dengan setDoc() atau updateDoc() yang memberitahu server untuk menyatukan elemen tertentu dengan nilai array apa pun yang sudah ada di server. Setiap elemen tertentu yang belum ada dalam array akan ditambahkan di akhir. Jika bidang yang diubah belum berupa larik, maka akan ditimpa dengan larik yang berisi elemen yang ditentukan secara persis.
fungsi(bidang, ...)
rata-rata (bidang) Buat objek AggregateField yang dapat digunakan untuk menghitung rata-rata bidang tertentu pada rentang dokumen dalam kumpulan hasil kueri.
jumlah(bidang) Buat objek AggregateField yang dapat digunakan untuk menghitung jumlah bidang tertentu pada rentang dokumen dalam kumpulan hasil kueri.
fungsi(Jalur Bidang, ...)
orderBy(fieldPath, arahStr) Membuat QueryOrderByConstraint yang mengurutkan hasil kueri berdasarkan bidang yang ditentukan, secara opsional dalam urutan menurun, bukan menaik. Catatan: Dokumen yang tidak berisi kolom tertentu tidak akan ditampilkan dalam hasil kueri.
di mana(fieldPath, opStr, nilai) Membuat QueryFieldFilterConstraint yang mewajibkan dokumen harus berisi bidang tertentu dan nilainya harus memenuhi batasan relasi yang disediakan.
fungsi(nilai bidang, ...)
endAt(nilai bidang) Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir pada bidang yang disediakan relatif terhadap urutan kueri. Urutan nilai bidang harus sesuai dengan urutan berdasarkan klausa kueri.
endBefore(nilai bidang) Membuat QueryEndAtConstraint yang mengubah kumpulan hasil menjadi akhir sebelum bidang yang disediakan relatif terhadap urutan kueri. Urutan nilai bidang harus sesuai dengan urutan berdasarkan klausa kueri.
startAfter(nilai bidang) Membuat QueryStartAtConstraint yang mengubah kumpulan hasil untuk dimulai setelah bidang yang disediakan relatif terhadap urutan kueri. Urutan nilai bidang harus sesuai dengan urutan berdasarkan klausa kueri.
startAt(nilai bidang) Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai pada bidang yang disediakan relatif terhadap urutan kueri. Urutan nilai bidang harus sesuai dengan urutan berdasarkan klausa kueri.
fungsi(Manajer indeks, ...)
hapusSemuaPersistentCacheIndexes(indexManager) Menghapus semua indeks cache yang persisten. Harap diperhatikan bahwa fungsi ini juga akan menghapus indeks yang dihasilkan oleh setIndexConfiguration() , yang sudah tidak digunakan lagi.
nonaktifkanPersistentCacheIndexAutoCreation(indexManager) Berhenti membuat indeks cache persisten secara otomatis untuk eksekusi kueri lokal. Indeks yang dibuat dengan memanggil enablePersistentCacheIndexAutoCreation() masih berlaku.
aktifkanPersistentCacheIndexAutoCreation(indexManager) Memungkinkan SDK membuat indeks cache persisten secara otomatis untuk eksekusi kueri lokal ketika SDK yakin indeks cache dapat membantu meningkatkan kinerja. Fitur ini dinonaktifkan secara default.
fungsi(kiri, ...)
agregatFieldEqual (kiri, kanan) Membandingkan dua 'AggregateField ` contoh untuk kesetaraan.
agregatQuerySnapshotEqual(kiri, kanan) Membandingkan dua instance AggregateQuerySnapshot untuk kesetaraan. Dua instans AggregateQuerySnapshot dianggap "sama" jika keduanya memiliki kueri dasar yang membandingkan data yang sama dan setara.
queryEqual (kiri, kanan) Mengembalikan nilai benar jika kueri yang diberikan mengarah ke koleksi yang sama dan menerapkan batasan yang sama.
refEqual (kiri, kanan) Mengembalikan nilai benar jika referensi yang diberikan sama.
snapshotEqual (kiri, kanan) Mengembalikan nilai benar jika snapshot yang disediakan sama.
fungsi(batas, ...)
batas(batas) Membuat QueryLimitConstraint yang hanya mengembalikan dokumen pertama yang cocok.
batasKe Terakhir(batas) Membuat QueryLimitConstraint yang hanya mengembalikan dokumen terakhir yang cocok. Anda harus menentukan setidaknya satu klausa orderBy untuk kueri limitToLast , jika tidak, pengecualian akan diberikan selama eksekusi.
fungsi(tingkat log, ...)
setLogLevel(logLevel) Menetapkan verbositas log Cloud Firestore (debug, error, atau senyap).
fungsi(n, ...)
kenaikan(n) Mengembalikan nilai khusus yang dapat digunakan dengan setDoc() atau updateDoc() yang memberitahu server untuk menaikkan nilai bidang saat ini dengan nilai yang diberikan. Jika operan atau nilai bidang saat ini menggunakan presisi floating point, semua aritmatika mengikuti semantik IEEE 754. Jika kedua nilai adalah bilangan bulat, nilai di luar rentang angka aman JavaScript ( Number.MIN_SAFE_INTEGER hingga Number.MAX_SAFE_INTEGER ) juga dapat mengalami kehilangan presisi. Selanjutnya, setelah diproses oleh backend Firestore, semua operasi bilangan bulat dibatasi antara -2^63 dan 2^63-1. Jika nilai bidang saat ini bukan bertipe number , atau jika bidang tersebut belum ada, transformasi akan menetapkan bidang tersebut ke nilai yang diberikan.
fungsi(kueri, ...)
getAggregateFromServer(kueri, agregatSpec) Menghitung agregasi tertentu atas dokumen dalam kumpulan hasil kueri tertentu tanpa benar-benar mengunduh dokumen. Menggunakan fungsi ini untuk melakukan agregasi adalah efisien karena hanya nilai agregasi akhir, bukan data dokumen, yang diunduh. Fungsi ini dapat melakukan agregasi dokumen jika kumpulan hasil terlalu besar untuk diunduh seluruhnya (ribuan dokumen). Hasil yang diterima dari server disajikan, tidak diubah, tanpa mempertimbangkan keadaan lokal mana pun. Artinya, dokumen dalam cache lokal tidak dipertimbangkan, dan modifikasi lokal juga belum disinkronkan dengan server. Hasil yang diunduh sebelumnya, jika ada, tidak digunakan. Setiap pemanggilan fungsi ini tentu melibatkan perjalanan bolak-balik ke server.
getCountFromServer(kueri) Menghitung jumlah dokumen dalam kumpulan hasil kueri yang diberikan tanpa benar-benar mengunduh dokumen tersebut. Penggunaan fungsi ini untuk menghitung dokumen adalah efisien karena hanya penghitungan akhir, bukan data dokumen, yang diunduh. Fungsi ini dapat menghitung dokumen jika kumpulan hasil terlalu besar untuk diunduh seluruhnya (ribuan dokumen). Hasil yang diterima dari server disajikan, tidak diubah, tanpa mempertimbangkan keadaan lokal mana pun. Artinya, dokumen dalam cache lokal tidak dipertimbangkan, dan modifikasi lokal juga belum disinkronkan dengan server. Hasil yang diunduh sebelumnya, jika ada, tidak digunakan. Setiap pemanggilan fungsi ini tentu melibatkan perjalanan bolak-balik ke server.
getDocs (kueri) Jalankan kueri dan kembalikan hasilnya sebagai QuerySnapshot . Catatan: getDocs() mencoba menyediakan data terkini bila memungkinkan dengan menunggu data dari server, namun mungkin mengembalikan data cache atau gagal jika Anda offline dan server tidak dapat dijangkau. Untuk menentukan perilaku ini, aktifkan getDocsFromCache() atau getDocsFromServer() .
getDocsFromCache(kueri) Menjalankan kueri dan mengembalikan hasilnya sebagai QuerySnapshot dari cache. Mengembalikan kumpulan hasil kosong jika tidak ada dokumen yang cocok dengan kueri yang saat ini di-cache.
getDocsFromServer(kueri) Menjalankan kueri dan mengembalikan hasilnya sebagai QuerySnapshot dari server. Mengembalikan kesalahan jika jaringan tidak tersedia.
onSnapshot(kueri, pengamat) Melampirkan pendengar untuk acara QuerySnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . Listener dapat dibatalkan dengan memanggil fungsi yang dikembalikan ketika onSnapshot dipanggil. CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
onSnapshot(kueri, opsi, pengamat) Melampirkan pendengar untuk acara QuerySnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . Listener dapat dibatalkan dengan memanggil fungsi yang dikembalikan ketika onSnapshot dipanggil. CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
onSnapshot(kueri, selanjutnya, onError, onCompletion) Melampirkan pendengar untuk acara QuerySnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . Listener dapat dibatalkan dengan memanggil fungsi yang dikembalikan ketika onSnapshot dipanggil. CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
onSnapshot(kueri, opsi, berikutnya, onError, onCompletion) Melampirkan pendengar untuk acara QuerySnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . Listener dapat dibatalkan dengan memanggil fungsi yang dikembalikan ketika onSnapshot dipanggil. CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
kueri(kueri, filter komposit, batasan kueri) Membuat instance Query baru yang tidak dapat diubah yang diperluas untuk juga menyertakan batasan kueri tambahan.
kueri(kueri, batasan kueri) Membuat instance Query baru yang tidak dapat diubah yang diperluas untuk juga menyertakan batasan kueri tambahan.
fungsi(kendala kueri, ...)
dan (kendala permintaan) Membuat QueryCompositeFilterConstraint baru yang merupakan gabungan dari batasan filter yang diberikan. Filter konjungsi menyertakan dokumen jika memenuhi semua filter yang diberikan.
atau (kendala permintaan) Membuat QueryCompositeFilterConstraint baru yang merupakan disjungsi dari batasan filter yang diberikan. Filter disjungsi menyertakan dokumen jika memenuhi salah satu filter yang diberikan.
fungsi(referensi, ...)
addDoc(referensi, data) Tambahkan dokumen baru ke CollectionReference tertentu dengan data yang diberikan, berikan ID dokumen secara otomatis.
koleksi (referensi, jalur, segmen jalur) Mendapatkan instance CollectionReference yang merujuk ke subkoleksi reference di jalur relatif yang ditentukan.
koleksi (referensi, jalur, segmen jalur) Mendapatkan instance CollectionReference yang merujuk ke subkoleksi reference di jalur relatif yang ditentukan.
deleteDoc (referensi) Menghapus dokumen yang dirujuk oleh DocumentReference yang ditentukan.
doc(referensi, jalur, segmen jalur) Mendapatkan instance DocumentReference yang merujuk ke dokumen dalam reference di jalur relatif yang ditentukan. Jika tidak ada jalur yang ditentukan, ID unik yang dibuat secara otomatis akan digunakan untuk DocumentReference yang dikembalikan.
doc(referensi, jalur, segmen jalur) Mendapatkan instance DocumentReference yang merujuk ke dokumen dalam reference di jalur relatif yang ditentukan.
dapatkanDoc(referensi) Membaca dokumen yang dirujuk oleh DocumentReference ini. Catatan: getDoc() mencoba menyediakan data terkini bila memungkinkan dengan menunggu data dari server, namun mungkin mengembalikan data cache atau gagal jika Anda offline dan server tidak dapat dijangkau. Untuk menentukan perilaku ini, aktifkan getDocFromCache() atau getDocFromServer() .
getDocFromCache (referensi) Membaca dokumen yang dirujuk oleh DocumentReference ini dari cache. Mengembalikan kesalahan jika dokumen saat ini tidak di-cache.
getDocFromServer(referensi) Membaca dokumen yang dirujuk oleh DocumentReference ini dari server. Mengembalikan kesalahan jika jaringan tidak tersedia.
onSnapshot(referensi, pengamat) Melampirkan pendengar untuk acara DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
onSnapshot(referensi, opsi, pengamat) Melampirkan pendengar untuk acara DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
onSnapshot(referensi, onNext, onError, onCompletion) Melampirkan pendengar untuk acara DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
onSnapshot(referensi, opsi, onNext, onError, onCompletion) Melampirkan pendengar untuk acara DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError satu per satu, atau meneruskan satu objek pengamat dengan callback next dan error . CATATAN: Meskipun callback onCompletion dapat diberikan, callback tersebut tidak akan pernah dipanggil karena aliran snapshot tidak pernah berakhir.
setDoc(referensi, data) Menulis ke dokumen yang dirujuk oleh DocumentReference ini. Jika dokumennya belum ada, maka akan dibuat.
setDoc(referensi, data, opsi) Menulis ke dokumen yang dirujuk oleh DocumentReference yang ditentukan. Jika dokumennya belum ada, maka akan dibuat. Jika Anda menyediakan merge atau mergeFields , data yang disediakan dapat digabungkan ke dalam dokumen yang sudah ada.
perbaruiDoc(referensi, data) Memperbarui bidang dalam dokumen yang dirujuk oleh DocumentReference yang ditentukan. Pembaruan akan gagal jika diterapkan pada dokumen yang tidak ada.
updateDoc(referensi, bidang, nilai, moreFieldsAndValues) Bidang pembaruan dalam dokumen yang dirujuk oleh DocumentReference yang ditentukan Pembaruan akan gagal jika diterapkan pada dokumen yang tidak ada. Bidang bertumpuk dapat diperbarui dengan menyediakan string jalur bidang yang dipisahkan titik atau dengan menyediakan objek FieldPath .
fungsi(pengaturan, ...)
memoryLocalCache (pengaturan) Membuat instance MemoryLocalCache . Instance ini dapat disetel ke FirestoreSettings.cache untuk memberi tahu SDK lapisan cache mana yang akan digunakan.
memoryLruGarbageCollector (pengaturan) Membuat instance MemoryLruGarbageCollector . Ukuran target dapat ditentukan sebagai bagian dari parameter pengaturan. Kolektor akan mulai menghapus dokumen setelah ukuran cache melebihi ukuran yang ditentukan. Ukuran cache default adalah 40MB (40*1024*1024 byte).
persistenLocalCache (pengaturan) Membuat sebuah instance dari PersistentLocalCache . Instance ini dapat disetel ke FirestoreSettings.cache untuk memberi tahu SDK lapisan cache mana yang akan digunakan. Cache persisten tidak dapat digunakan di lingkungan Node.js.
persistenSingleTabManager (pengaturan) Membuat instance PersistentSingleTabManager .
fungsi(potret, ...)
endAt(jepretan) Membuat QueryEndAtConstraint yang mengubah kumpulan hasil menjadi akhir pada dokumen yang disediakan (inklusif). Posisi akhir relatif terhadap urutan kueri. Dokumen harus berisi semua bidang yang disediakan dalam orderBy kueri.
akhirSebelum(snapshot) Membuat QueryEndAtConstraint yang mengubah kumpulan hasil menjadi akhir sebelum dokumen yang disediakan (eksklusif). Posisi akhir relatif terhadap urutan kueri. Dokumen harus berisi semua bidang yang disediakan dalam orderBy kueri.
mulaiSetelah(jepretan) Membuat QueryStartAtConstraint yang mengubah kumpulan hasil untuk dimulai setelah dokumen yang disediakan (eksklusif). Posisi awal relatif terhadap urutan kueri. Dokumen harus berisi semua bidang yang disediakan dalam orderBy kueri.
mulaiDi(jepretan) Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai pada dokumen yang disediakan (inklusif). Posisi awal relatif terhadap urutan kueri. Dokumen harus berisi semua bidang yang disediakan dalam orderBy kueri ini.

Kelas

Kelas Keterangan
Bidang Agregat Mewakili agregasi yang dapat dilakukan oleh Firestore.
Snapshot Kueri Agregat Hasil mengeksekusi kueri agregasi.
Byte Objek yang tidak dapat diubah yang mewakili array byte.
KoleksiReferensi Objek CollectionReference dapat digunakan untuk menambahkan dokumen, mendapatkan referensi dokumen, dan menanyakan dokumen (menggunakan query() ).
Referensi Dokumen DocumentReference mengacu pada lokasi dokumen di database Firestore dan dapat digunakan untuk menulis, membaca, atau mendengarkan lokasi tersebut. Dokumen di lokasi yang direferensikan mungkin ada atau mungkin tidak ada.
Cuplikan Dokumen DocumentSnapshot berisi data yang dibaca dari dokumen di database Firestore Anda. Data dapat diekstraksi dengan .data() atau .get(<field>) untuk mendapatkan bidang tertentu. Untuk DocumentSnapshot yang menunjuk ke dokumen yang tidak ada, akses data apa pun akan menghasilkan 'tidak terdefinisi'. Anda dapat menggunakan metode exists() untuk memverifikasi keberadaan dokumen secara eksplisit.
Jalur Lapangan FieldPath mengacu pada bidang dalam dokumen. Jalur dapat terdiri dari satu nama bidang (mengacu pada bidang tingkat atas dalam dokumen), atau daftar nama bidang (merujuk pada bidang bertumpuk dalam dokumen). Buat FieldPath dengan memberikan nama bidang. Jika lebih dari satu nama bidang disediakan, jalur akan mengarah ke bidang bertumpuk dalam dokumen.
Nilai Bidang Nilai penjaga yang dapat digunakan saat menulis kolom dokumen dengan set() atau update() .
toko pemadam kebakaran Antarmuka layanan Cloud Firestore. Jangan panggil konstruktor ini secara langsung. Sebagai gantinya, gunakan getFirestore() .
Kesalahan Firestore Kesalahan yang ditampilkan oleh operasi Firestore.
Titik Geo Objek yang tidak dapat diubah yang mewakili lokasi geografis di Firestore. Lokasi direpresentasikan sebagai pasangan lintang/bujur. Nilai lintang berada pada kisaran [-90, 90]. Nilai garis bujur berada pada kisaran [-180, 180].
LoadBundleTask Mewakili tugas memuat paket Firestore. Ini memberikan kemajuan pemuatan bundel, serta penyelesaian tugas dan kejadian kesalahan. API ini kompatibel dengan Promise<LoadBundleTaskProgress> .
PersistentCacheIndexManager PersistentCacheIndexManager untuk mengonfigurasi indeks cache persisten yang digunakan untuk eksekusi kueri lokal. Untuk menggunakannya, panggil getPersistentCacheIndexManager() untuk mendapatkan sebuah instance.
Pertanyaan Query mengacu pada kueri yang dapat Anda baca atau dengarkan. Anda juga dapat membuat objek Query yang disempurnakan dengan menambahkan filter dan pengurutan.
Batasan QueryCompositeFilter QueryCompositeFilterConstraint digunakan untuk mempersempit kumpulan dokumen yang dikembalikan oleh kueri Firestore dengan melakukan logika OR atau AND dari beberapa QueryFieldFilterConstraint s atau QueryCompositeFilterConstraint S. QueryCompositeFilterConstraint s dibuat dengan memanggil or() atau and() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryCompositeFilterConstraint .
Batasan Kueri QueryConstraint digunakan untuk mempersempit kumpulan dokumen yang dikembalikan oleh kueri Firestore. QueryConstraint dibuat dengan memanggil Where() , dipesan oleh() , dimulai dari() , mulaiSetelah() , akhirSebelum() , akhirPada() , membatasi() , limitToLast() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryConstraint ini.
Cuplikan Dokumen Kueri QueryDocumentSnapshot berisi data yang dibaca dari dokumen di database Firestore Anda sebagai bagian dari kueri. Dokumen dijamin ada dan datanya dapat diekstraksi dengan .data() atau .get(<field>) untuk mendapatkan field tertentu. QueryDocumentSnapshot menawarkan permukaan API yang sama dengan DocumentSnapshot . Karena hasil kueri hanya berisi dokumen yang ada, properti exists akan selalu benar dan data() tidak akan pernah mengembalikan 'tidak terdefinisi'.
QueryEndAtConstraint QueryEndAtConstraint digunakan untuk mengecualikan dokumen dari akhir kumpulan hasil yang dikembalikan oleh kueri Firestore. QueryEndAtConstraint s dibuat dengan memanggil endAt() atau endBefore() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryEndAtConstraint ini.
Batasan QueryFieldFilter QueryFieldFilterConstraint digunakan untuk mempersempit kumpulan dokumen yang dikembalikan oleh kueri Firestore dengan memfilter satu atau beberapa kolom dokumen. QueryFieldFilterConstraint s dibuat dengan memanggil Where() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryFieldFilterConstraint ini.
Kendala Batas Kueri QueryLimitConstraint digunakan untuk membatasi jumlah dokumen yang dikembalikan oleh kueri Firestore. QueryLimitConstraint s dibuat dengan memanggil limit() atau limitToLast() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryLimitConstraint ini.
QueryOrderByConstraint QueryOrderByConstraint digunakan untuk mengurutkan kumpulan dokumen yang dikembalikan oleh kueri Firestore. QueryOrderByConstraint s dibuat dengan memanggil orderBy() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryOrderByConstraint ini. CATATAN: Dokumen yang tidak berisi bidang OrderBy tidak akan ada dalam hasil kueri.
QuerySnapshot QuerySnapshot berisi nol atau lebih DocumentSnapshot objek yang mewakili hasil kueri. Dokumen dapat diakses sebagai array melalui properti docs atau disebutkan menggunakan metode forEach . Jumlah dokumen dapat ditentukan melalui properti empty dan size .
Querystartatconstraint QueryStartAtConstraint digunakan untuk mengecualikan dokumen dari awal set hasil yang dikembalikan oleh permintaan Firestore. QueryStartAtConstraint S dibuat dengan memohon startAt () atau startAfter () dan kemudian dapat diteruskan ke kueri () untuk membuat instance kueri baru yang juga berisi QueryStartAtConstraint ini.
Metadata Cuplikan Metadata tentang snapshot, menggambarkan keadaan snapshot.
Stempel waktu Timestamp mewakili titik waktu terlepas dari zona waktu atau kalender waktu, diwakili sebagai detik dan fraksi detik pada resolusi nanosecond dalam waktu zaman UTC. Ini dikodekan menggunakan kalender Proleptik Gregorian yang memperluas kalender Gregorian mundur ke tahun pertama. Dikodekan dengan asumsi semua menit panjangnya 60 detik, yaitu lompatan detik "diolesi" sehingga tidak diperlukan lompatan meja kedua untuk interpretasi. Rentang dari 0001-01-01T00: 00: 00Z hingga 9999-12-31T23: 59: 59.99999999z. Untuk contoh dan spesifikasi lebih lanjut, lihat definisi cap waktu .
Transaksi Referensi ke transaksi. Objek Transaction yang diteruskan ke updateFunction transaksi menyediakan metode untuk membaca dan menulis data dalam konteks transaksi. Lihat runtransaction () .
WriteBatch Batch tulis, digunakan untuk melakukan beberapa tulisan sebagai unit atom tunggal. Objek WriteBatch dapat diperoleh dengan memanggil WriteBatch () . Ini menyediakan metode untuk menambahkan penulisan ke batch tulis. Tidak ada penulisan yang akan dilakukan (atau terlihat secara lokal) sampai writeBatch.Commit () dipanggil.

Antarmuka

Antarmuka Keterangan
Agregatespec Menentukan satu set agregasi dan aliasnya.
DocumentChange DocumentChange mewakili perubahan pada dokumen yang cocok dengan kueri. Ini berisi dokumen yang terpengaruh dan jenis perubahan yang terjadi.
DocumentData Dokumen Data (untuk digunakan dengan setDoc () ) terdiri dari bidang yang dipetakan ke nilai.
Eksperimen di atas Puncak Opsi yang mengkonfigurasi transportasi jaringan yang mendasari SDK (WebChannel) saat pemilihan panjang digunakan. Catatan: Antarmuka ini "eksperimental" dan dapat berubah. Lihat FirestoreSettings.experimentalAutoDetectLongPolling , FirestoreSettings.experimentalForceLongPolling , dan FirestoreSettings.experimentalLongPollingOptions .
Firestoredataconverter Converter Digunakan oleh withConverter() untuk mengubah objek pengguna tipe AppModelType menjadi data firestore tipe DbModelType . Menggunakan konverter memungkinkan Anda untuk menentukan argumen tipe generik saat menyimpan dan mengambil objek dari Firestore. Dalam konteks ini, "AppModel" adalah kelas yang digunakan dalam aplikasi untuk mengemas informasi dan fungsionalitas terkait. Kelas seperti itu dapat, misalnya, memiliki sifat dengan tipe data yang kompleks dan bersarang, properti yang digunakan untuk memoisasi, sifat -sifat jenis yang tidak didukung oleh Firestore (seperti symbol dan bigint ), dan fungsi pembantu yang melakukan operasi gabungan. Kelas -kelas seperti itu tidak cocok dan/atau mungkin untuk disimpan ke dalam basis data Firestore. Sebaliknya, contoh -contoh kelas tersebut perlu dikonversi menjadi "objek JavaScript lama" (pojos) dengan sifat primitif eksklusif, berpotensi bersarang di dalam pojos atau array pojos lainnya. Dalam konteks ini, jenis ini disebut sebagai "DBModel" dan akan menjadi objek yang cocok untuk bertahan di Firestore. Untuk kenyamanan, aplikasi dapat mengimplementasikan FirestoreDataConverter dan mendaftarkan konverter dengan objek firestore, seperti DocumentReference atau Query , untuk secara otomatis mengonversi AppModel menjadi DbModel saat disimpan menjadi Firestore, dan mengubah DbModel menjadi AppModel ketika mengambil dari Firestore.
Firestoresettings Menentukan konfigurasi khusus untuk instance Cloud Firestore Anda. Anda harus mengatur ini sebelum memohon metode lain.
Indeks (Beta) Definisi SDK dari indeks firestore.
Konfigurasi Indeks (Beta) Daftar indeks firestore untuk mempercepat eksekusi kueri lokal. Lihat format JSON untuk deskripsi format definisi indeks.
Bidang Indeks (Beta) elemen bidang tunggal dalam konfigurasi indeks.
LoadBundletaskProgress Mewakili pembaruan kemajuan atau keadaan akhir dari bundel pemuatan.
Memorycachesettings Objek Pengaturan untuk mengonfigurasi instance MemoryLocalCache .
Memoryeagegarbagecollector Kolektor sampah menghapus dokumen kapan pun mereka bukan bagian dari pertanyaan aktif, dan tidak memiliki mutasi lokal yang melekat padanya. Kolektor ini mencoba memastikan jejak kaki memori terendah dari SDK, dengan risiko dokumen yang tidak di -cache untuk kueri offline atau untuk pertanyaan langsung ke cache. Gunakan fungsi pabrik untuk membuat instance kolektor ini.
Memorylocalcache Memberikan cache dalam memori ke SDK. Ini adalah cache default kecuali dikonfigurasi secara eksplisit sebaliknya. Untuk menggunakan, buat instance menggunakan fungsi pabrik, lalu atur instance ke FirestoreSettings.cache dan hubungi initializeFirestore menggunakan objek Pengaturan.
Memorylrugarbagecollector Seorang kolektor sampah menghapus dokumen yang paling tidak digunakan kembali dalam beberapa batch. Kolektor ini dikonfigurasi dengan ukuran target, dan hanya akan melakukan koleksi ketika dokumen yang di -cache melebihi ukuran target. Ini menghindari permintaan backend yang diulangi untuk kueri atau dokumen yang sama, dengan risiko memiliki jejak memori yang lebih besar. Gunakan fungsi pabrik untuk membuat instance kolektor ini.
Persistencesettings Pengaturan yang dapat diteruskan ke enableIndexedDbPersistence() untuk mengkonfigurasi kegigihan Firestore. Kegigihan tidak dapat digunakan dalam lingkungan Node.js.
PersistentCachesettings Objek Pengaturan untuk mengonfigurasi instance PersistentLocalCache . Cache persisten tidak dapat digunakan dalam lingkungan Node.js.
Persistentlocalcache Memberikan cache persisten yang didukung oleh IndexedDB ke SDK. Untuk menggunakan, buat instance menggunakan fungsi pabrik, lalu atur instance ke FirestoreSettings.cache dan hubungi initializeFirestore menggunakan objek Pengaturan.
PersistentMultipletabManager Manajer tab yang mendukung beberapa tab. SDK akan menyinkronkan kueri dan mutasi yang dilakukan di semua tab menggunakan SDK.
PersistentsingLeTabManager Manajer tab hanya mendukung satu tab, tidak ada sinkronisasi yang akan dilakukan di seluruh tab.
PersistentsingLeTabManagersettings Ketik untuk mengonfigurasi instance PersistentSingleTabManager .
Snapshotlistenoptions Objek opsi yang dapat diteruskan ke onsnapshot () dan querysnapshot.docchanges () untuk mengontrol jenis perubahan yang dimasukkan dalam set hasil.
Opsi Snapshot Opsi yang mengkonfigurasi bagaimana data diambil dari DocumentSnapshot (misalnya perilaku yang diinginkan untuk cap waktu server yang belum diatur ke nilai akhir mereka).
Opsi Transaksi Opsi untuk menyesuaikan perilaku transaksi.
Berhenti berlangganan Fungsi yang dikembalikan oleh onSnapshot() yang menghapus pendengar saat dipanggil.

Variabel

Variabel Keterangan
Cache_size_unlimited Konstan yang digunakan untuk menunjukkan koleksi sampah LRU harus dinonaktifkan. Tetapkan nilai ini sebagai cacheSizeBytes pada pengaturan yang diteruskan ke instance Firestore .

Ketik Alias

Ketik Alias Keterangan
AddPrefixtokeys Mengembalikan peta baru di mana setiap kunci diawali dengan kunci luar ditambahkan ke titik.
AgregatefieldType Persatuan semua jenis AggregateField yang didukung oleh Firestore.
Agregatespecdata Jenis yang kuncinya diambil dari AggregateSpec , dan yang nilainya merupakan hasil dari agregasi yang dilakukan oleh AggregateField yang sesuai dari input AggregateSpec .
Tipe Agregat Jenis Union yang mewakili jenis agregat yang akan dilakukan.
ChildupdateFields Pembantu untuk menghitung bidang bersarang untuk tipe T1 yang diberikan. Ini diperlukan untuk mendistribusikan jenis serikat seperti undefined | {...} (terjadi untuk props opsional) atau {a: A} | {b: B} . Dalam kasus penggunaan ini, V digunakan untuk mendistribusikan jenis T[K] pada Record , karena T[K] dievaluasi sebagai ekspresi dan tidak didistribusikan. Lihat https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types
DocumentChangetype Jenis DocumentChange dapat 'ditambahkan', 'dihapus', atau 'dimodifikasi'.
FirestoreErrorCode Set kode status firestore. Kode -kode tersebut sama pada yang diekspos oleh GRPC di sini: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md Nilai yang mungkin: - 'dibatalkan': Operasi dibatalkan (biasanya oleh penelepon). - 'Tidak Diketahui': Kesalahan yang tidak diketahui atau kesalahan dari domain kesalahan yang berbeda. - 'Invalid-Argument': Klien menentukan argumen yang tidak valid. Perhatikan bahwa ini berbeda dari 'precondition gagal'. 'Argumen yang tidak valid' menunjukkan argumen yang bermasalah terlepas dari keadaan sistem (misalnya nama lapangan yang tidak valid). - 'Tenggat Batas waktu': Batas waktu kedaluwarsa sebelum operasi bisa selesai. Untuk operasi yang mengubah keadaan sistem, kesalahan ini dapat dikembalikan bahkan jika operasi telah berhasil selesai. Misalnya, respons yang berhasil dari server bisa saja ditunda cukup lama untuk tenggat waktu berakhir. - 'Tidak ditemukan': Beberapa dokumen yang diminta tidak ditemukan. - 'Sudah-exist': Beberapa dokumen yang kami coba buat sudah ada. - 'Izin-Denied': Penelepon tidak memiliki izin untuk menjalankan operasi yang ditentukan. -'Sumber Daya Lengkap': Beberapa sumber daya telah habis, mungkin kuota per pengguna, atau mungkin seluruh sistem file tidak ada di luar angkasa. - 'Gagal-precondition': Operasi ditolak karena sistem tidak dalam keadaan yang diperlukan untuk eksekusi operasi. - 'dibatalkan': Operasi dibatalkan, biasanya karena masalah konkurensi seperti transaksi dibatalkan, dll.- 'out-of-range': Operasi dicoba melewati kisaran yang valid. - 'tidak diimplementasikan': Operasi tidak diimplementasikan atau tidak didukung/diaktifkan. - 'Internal': Kesalahan internal. Berarti beberapa invarian yang diharapkan oleh sistem yang mendasarinya telah rusak. Jika Anda melihat salah satu dari kesalahan ini, ada sesuatu yang sangat rusak. - 'Tidak tersedia': Layanan saat ini tidak tersedia. Ini kemungkinan besar merupakan kondisi sementara dan dapat diperbaiki dengan mencoba lagi dengan backoff. - 'Kehilangan data': Kehilangan data atau korupsi yang tidak dapat dipulihkan. - 'tidak autentikasi': Permintaan tidak memiliki kredensial otentikasi yang valid untuk operasi.
Firestorelocalcache Jenis Union dari semua lapisan cache SDK yang didukung.
Listensource Jelaskan sumber yang didengarkan kueri. Setel ke default untuk mendengarkan perubahan cache dan server. Setel ke cache untuk mendengarkan perubahan cache saja.
Memorygagecollector Jenis Union dari semua dukungan pengumpul Gabage untuk memori cache lokal.
NestedupdateFields Untuk setiap bidang (misalnya 'bar'), temukan semua kunci bersarang (misalnya { 'bar.baz': t1, 'bar.qux': t2 } ). Memotong mereka bersama untuk membuat peta tunggal yang berisi semua kunci yang mungkin ditandai sebagai opsional
OrderByDirection Arah klausa orderby () ditentukan sebagai 'desc' atau 'ASC' (turun atau naik).
ParsialwithfieldValue Mirip dengan Partial<T> TypeScript, tetapi memungkinkan bidang bersarang dihilangkan dan nilai -nilai lapangan diteruskan sebagai nilai properti.
PersistenttabManager Persatuan semua manajer tab yang tersedia.
Primitif Tipe primitif.
QueryConstraintType Menjelaskan berbagai kendala kueri yang tersedia di SDK ini.
Queryfilterconstraint QueryFilterConstraint adalah tipe serikat penolong yang mewakili QueryFieldFilterConstraint dan QueryCompositEfilterConstraint .
Querynonfilterconstraint QueryNonFilterConstraint adalah tipe serikat penolong yang mewakili queryconstraints yang digunakan untuk mempersempit atau memesan set dokumen, tetapi itu tidak secara eksplisit menyaring di bidang dokumen. QueryNonFilterConstraint S dibuat dengan memohon pesanan () , dimulai dari() , startafter () , endbefore () , endat () , limit () atau limittolast () dan kemudian dapat diteruskan ke kueri () untuk membuat instance kueri baru yang juga berisi QueryConstraint .
Set Opsi Objek opsi yang mengonfigurasi perilaku setDoc () , dan menelepon. Panggilan ini dapat dikonfigurasi untuk melakukan gabungan granular alih -alih menimpa dokumen target secara keseluruhan dengan memberikan SetOptions dengan merge: true .
Status Tugas Mewakili keadaan tugas pemuatan bundel. Baik 'kesalahan' dan 'sukses' adalah keadaan tenggelam: tugas akan dibatalkan atau diselesaikan dan tidak akan ada lagi pembaruan setelah dilaporkan.
Persatuan Ke Persimpangan Diberikan tipe Union U = T1 | T2 | ... , mengembalikan tipe berpotongan (T1 & T2 & ...) . Menggunakan jenis kondisional distributif dan inferensi dari tipe bersyarat. Ini berfungsi karena banyak kandidat untuk variabel tipe yang sama dalam posisi contra-varian menyebabkan jenis persimpangan disimpulkan. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-type-type-type-typesection -jenis
Perbaharui data Perbarui data (untuk digunakan dengan updateDoc () ) Itu terdiri dari jalur lapangan (misalnya 'foo' atau 'foo.baz') dipetakan ke nilai. Bidang yang berisi titik -titik referensi bidang bersarang di dalam dokumen. FieldValues ​​dapat diteruskan sebagai nilai properti.
Di mana Kondisi filter dalam klausa di mana () ditentukan menggunakan string '& lt;', '& lt; =', '==', '! =', '& Gt; =', '& gt;', 'array-contains' , 'in', 'array-contains-any', dan 'not-in'.
WithfieldValue Memungkinkan nilai -nilai lapangan diteruskan sebagai nilai properti sambil menjaga keamanan jenis.

fungsi (aplikasi, ...)

GetFirestore (Aplikasi)

Mengembalikan instance firestore default yang ada yang terkait dengan firebaseApp yang disediakan . Jika tidak ada contoh, inisialisasi instance baru dengan pengaturan default.

Tanda tangan:

export declare function getFirestore(app: FirebaseApp): Firestore;

Parameter

Parameter Jenis Keterangan
aplikasi FirebaseApp Contoh FirebaseApp yang dikaitkan dengan instance Firestore yang dikembalikan.

Pengembalian:

toko pemadam kebakaran

Contoh firestore default dari aplikasi yang disediakan.

getFirestore (aplikasi, databaseid)

API ini disediakan sebagai pratinjau untuk pengembang dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini di lingkungan produksi.

Mengembalikan instance Firestore bernama yang ada yang terkait dengan FirebaseApp yang disediakan . Jika tidak ada contoh, inisialisasi instance baru dengan pengaturan default.

Tanda tangan:

export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;

Parameter

Parameter Jenis Keterangan
aplikasi FirebaseApp Contoh FirebaseApp yang dikaitkan dengan instance Firestore yang dikembalikan.
databaseId rangkaian Nama basis data.

Pengembalian:

toko pemadam kebakaran

Instance Firestore bernama dari aplikasi yang disediakan.

InitializeFirestore (aplikasi, pengaturan, databaseid)

Menginisialisasi instance baru Firestore dengan pengaturan yang disediakan. Hanya dapat dipanggil sebelum fungsi lain, termasuk getFirestore () . Jika pengaturan kustom kosong, fungsi ini setara dengan memanggil getFirestore () .

Tanda tangan:

export declare function initializeFirestore(app: FirebaseApp, settings: FirestoreSettings, databaseId?: string): Firestore;

Parameter

Parameter Jenis Keterangan
aplikasi FirebaseApp FirebaseApp yang dengannya instance Firestore akan dikaitkan.
pengaturan Firestoresettings Objek Pengaturan untuk mengonfigurasi instance Firestore .
databaseId rangkaian Nama basis data.

Pengembalian:

toko pemadam kebakaran

Instance firestore yang baru diinisialisasi.

fungsi (firestore, ...)

ClearIndexedDBPersistence (Firestore)

Membersihkan penyimpanan persisten. Ini termasuk penulisan yang tertunda dan dokumen yang di -cache.

Harus dipanggil saat instance Firestore tidak dimulai (setelah aplikasi diakhiri atau ketika aplikasi pertama kali diinisialisasi). Pada startup, fungsi ini harus dipanggil sebelum fungsi lain (selain initializeFirestore () atau getFirestore () )). Jika instance Firestore masih berjalan, janji akan ditolak dengan kode kesalahan failed-precondition .

Tanda tangan:

export declare function clearIndexedDbPersistence(firestore: Firestore): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk membersihkan kegigihan.

Pengembalian:

Janji<batal>

Promise yang diselesaikan saat penyimpanan persisten dibersihkan. Kalau tidak, janji itu ditolak dengan kesalahan.

Koleksi (Firestore, Path, Pathsegments)

Mendapat instance CollectionReference yang mengacu pada koleksi di jalur absolut yang ditentukan.

Tanda tangan:

export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Referensi ke instance root Firestore .
jalur rangkaian Jalur yang dipisahkan dipisahkan ke koleksi.
segmen jalur rangkaian[] Segmen jalur tambahan untuk diterapkan relatif terhadap argumen pertama.

Pengembalian:

KoleksiReferensi < DocumentData , DocumentData >

Contoh CollectionReference .

Pengecualian

Jika jalur akhir memiliki jumlah segmen yang genap dan tidak menunjuk ke koleksi.

CollectionGroup (Firestore, CollectionD)

Membuat dan mengembalikan instance Query baru yang mencakup semua dokumen dalam database yang terkandung dalam koleksi atau subkoleksi dengan collectionId yang diberikan .

Tanda tangan:

export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Referensi ke instance root Firestore .
koleksiId rangkaian Mengidentifikasi koleksi untuk diminta. Setiap koleksi atau subkoleksi dengan ID ini sebagai segmen terakhir dari jalurnya akan dimasukkan. Tidak bisa berisi tebasan.

Pengembalian:

Pertanyaan < DocumentData , DocumentData >

Query yang dibuat .

ConnectFirestoreemulator (Firestore, Host, Port, Opsi)

Ubah contoh ini untuk berkomunikasi dengan Emulator Cloud Firestore.

Tanda tangan:

export declare function connectFirestoreEmulator(firestore: Firestore, host: string, port: number, options?: {
    mockUserToken?: EmulatorMockTokenOptions | string;
}): void;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Instance Firestore untuk mengonfigurasi untuk terhubung ke emulator.
tuan rumah rangkaian host emulator (mis: localhost).
pelabuhan nomor Port emulator (mis: 9000).
pilihan {mockusertoken?: emulatormocktokenOptions | rangkaian; }

Pengembalian:

ruang kosong

Disablenetwork (Firestore)

Menonaktifkan penggunaan jaringan untuk contoh ini. Itu dapat diaktifkan kembali melalui enablenetwork () . Saat jaringan dinonaktifkan, setiap pendengar snapshot, getDoc() atau getDocs() akan mengembalikan hasil dari cache, dan operasi penulisan apa pun akan antri sampai jaringan dipulihkan.

Tanda tangan:

export declare function disableNetwork(firestore: Firestore): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran

Pengembalian:

Janji<batal>

Promise yang diselesaikan setelah jaringan dinonaktifkan.

DOC (Firestore, Path, Pathsegments)

Mendapat instance DocumentReference yang mengacu pada dokumen di jalur absolut yang ditentukan.

Tanda tangan:

export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Referensi ke instance root Firestore .
jalur rangkaian Jalur yang dipisahkan dipisahkan ke dokumen.
segmen jalur rangkaian[] Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama.

Pengembalian:

Referensi Dokumen < DocumentData , DocumentData >

Instance DocumentReference .

Pengecualian

Jika jalur akhir memiliki jumlah segmen yang ganjil dan tidak menunjuk ke dokumen.

EnableIndexedDBPersistence (Firestore, Persistencesettings)

Fungsi ini akan dihapus dalam rilis besar di masa depan. Sebaliknya, atur FirestoreSettings.localCache ke instance PersistentLocalCache untuk mengaktifkan cache indexeddb. Menyebut fungsi ini ketika FirestoreSettings.localCache sudah ditentukan akan melempar pengecualian.

Upaya untuk mengaktifkan penyimpanan persisten, jika memungkinkan.

Pada kegagalan, enableIndexedDbPersistence() akan menolak janji atau melemparkan pengecualian. Ada beberapa alasan mengapa ini bisa gagal, yang dapat diidentifikasi dengan code pada kesalahan.

* Gagal-precondition: Aplikasi sudah terbuka di tab browser lain. * Tidak diimplementasikan: Browser tidak sesuai dengan implementasi kegigihan offline.

Perhatikan bahwa bahkan setelah kegagalan, instance Firestore akan tetap dapat digunakan, namun kegigihan offline akan dinonaktifkan.

Kegigihan tidak dapat digunakan dalam lingkungan Node.js.

Tanda tangan:

export declare function enableIndexedDbPersistence(firestore: Firestore, persistenceSettings?: PersistenceSettings): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk memungkinkan kegigihan.
persistencesettings Persistencesettings Pengaturan Opsional Obyek untuk Mengkonfigurasi Kegigihan.

Pengembalian:

Janji<batal>

Promise yang mewakili berhasil memungkinkan penyimpanan persisten.

EnablemultItabIndExedDBPersistence (Firestore)

Fungsi ini akan dihapus dalam rilis besar di masa depan. Sebaliknya, atur FirestoreSettings.localCache ke instance PersistentLocalCache untuk mengaktifkan cache indexeddb. Menyebut fungsi ini ketika FirestoreSettings.localCache sudah ditentukan akan melempar pengecualian.

Upaya untuk mengaktifkan penyimpanan multi-tab yang persisten, jika memungkinkan. Jika diaktifkan di semua tab, semua operasi berbagi akses ke kegigihan lokal, termasuk eksekusi kueri bersama dan pembaruan dokumen lokal yang dikompensasi latensi di semua contoh yang terhubung.

Pada kegagalan, enableMultiTabIndexedDbPersistence() akan menolak janji atau melempar pengecualian. Ada beberapa alasan mengapa ini bisa gagal, yang dapat diidentifikasi dengan code pada kesalahan.

* Gagal-precondition: Aplikasi sudah terbuka di tab browser lain dan multi-tab tidak diaktifkan. * Tidak diimplementasikan: Browser tidak sesuai dengan implementasi kegigihan offline.

Perhatikan bahwa bahkan setelah kegagalan, instance Firestore akan tetap dapat digunakan, namun kegigihan offline akan dinonaktifkan.

Tanda tangan:

export declare function enableMultiTabIndexedDbPersistence(firestore: Firestore): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk memungkinkan kegigihan.

Pengembalian:

Janji<batal>

Promise yang mewakili berhasil memungkinkan penyimpanan persisten.

Enablenetwork (Firestore)

Mengaktifkan kembali penggunaan jaringan untuk instance firestore ini setelah panggilan sebelumnya ke disablenetwork () .

Tanda tangan:

export declare function enableNetwork(firestore: Firestore): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran

Pengembalian:

Janji<batal>

Promise yang diselesaikan setelah jaringan diaktifkan.

GetperSistentCacheIndexManager (Firestore)

Mengembalikan Manajer Indeks PersistentCache yang digunakan oleh objek Firestore yang diberikan.

Instance PersistentCacheIndexManager , atau null jika penyimpanan persisten lokal tidak digunakan.

Tanda tangan:

export declare function getPersistentCacheIndexManager(firestore: Firestore): PersistentCacheIndexManager | null;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran

Pengembalian:

PersistentCacheIndexManager | batal

LoadBundle (Firestore, Bundledata)

Muat bundel firestore ke cache lokal.

Tanda tangan:

export declare function loadBundle(firestore: Firestore, bundleData: ReadableStream<Uint8Array> | ArrayBuffer | string): LoadBundleTask;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk memuat bundel.
Bundledata Aliran yang Dapat Dibaca<Uint8Array> | ArrayBuffer | rangkaian Objek yang mewakili bundel yang akan dimuat. Objek yang valid adalah ArrayBuffer , ReadableStream<Uint8Array> atau string .

Pengembalian:

Loadbundletask

Objek LoadBundleTask , yang memberi tahu penelepon dengan pembaruan kemajuan, dan peristiwa penyelesaian atau kesalahan. Ini dapat digunakan sebagai Promise<LoadBundleTaskProgress> .

NamedQuery (Firestore, Name)

Membaca permintaan Firestore dari cache lokal, diidentifikasi dengan nama yang diberikan.

Kueri yang disebutkan dikemas ke dalam bundel di sisi server (bersama dengan dokumen yang dihasilkan), dan dimuat ke cache lokal menggunakan loadBundle . Setelah di cache lokal, gunakan metode ini untuk mengekstrak permintaan dengan nama.

Tanda tangan:

export declare function namedQuery(firestore: Firestore, name: string): Promise<Query | null>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk membaca kueri.
nama rangkaian Nama kueri.

Pengembalian:

Janji < kueri | batal>

Promise yang diselesaikan dengan kueri atau null .

Onsnapshotsinsync (Firestore, Observer)

Melampirkan pendengar untuk acara snapshots-in-sync. Acara snapshots-in-sync menunjukkan bahwa semua pendengar yang dipengaruhi oleh perubahan yang diberikan telah ditembakkan, bahkan jika perubahan yang dihasilkan server tunggal mempengaruhi banyak pendengar.

CATATAN: Acara snapshots-in-sync hanya menunjukkan bahwa pendengar bersin-sinkron satu sama lain, tetapi tidak berhubungan dengan apakah snapshot tersebut selaras dengan server. Gunakan snapshotmetadata pada masing -masing pendengar untuk menentukan apakah snapshot berasal dari cache atau server.

Tanda tangan:

export declare function onSnapshotsInSync(firestore: Firestore, observer: {
    next?: (value: void) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk menyinkronkan snapshot.
pengamat {next?: (value: void) => void; Kesalahan?: (Kesalahan: FirestoreError ) => void; Lengkap?: () => void; } Satu objek yang berisi panggilan balik next dan error .

Pengembalian:

Berhenti berlangganan

Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pendengar snapshot.

Onsnapshotsinsync (Firestore, Onsync)

Melampirkan pendengar untuk acara snapshots-in-sync. Acara snapshots-in-sync menunjukkan bahwa semua pendengar yang dipengaruhi oleh perubahan yang diberikan telah ditembakkan, bahkan jika perubahan yang dihasilkan server tunggal mempengaruhi banyak pendengar.

CATATAN: Acara snapshots-in-sync hanya menunjukkan bahwa pendengar bersin-sinkron satu sama lain, tetapi tidak berhubungan dengan apakah snapshot tersebut selaras dengan server. Gunakan SnapshotMetadata pada masing -masing pendengar untuk menentukan apakah snapshot berasal dari cache atau server.

Tanda tangan:

export declare function onSnapshotsInSync(firestore: Firestore, onSync: () => void): Unsubscribe;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Contoh Firestore untuk menyinkronkan snapshot.
pada Sinkronisasi () => batal Panggilan balik yang akan dipanggil setiap kali semua pendengar snapshot saling sinkron.

Pengembalian:

Berhenti berlangganan

Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pendengar snapshot.

runtransaction (firestore, updateFunction, opsi)

Mengeksekusi updateFunction yang diberikan dan kemudian mencoba melakukan perubahan yang diterapkan dalam transaksi. Jika ada dokumen yang dibaca dalam transaksi telah berubah, Cloud Firestore menarik kembali updateFunction . Jika gagal berkomitmen setelah 5 upaya, transaksi gagal.

Jumlah maksimum penulisan yang diizinkan dalam satu transaksi adalah 500.

Tanda tangan:

export declare function runTransaction<T>(firestore: Firestore, updateFunction: (transaction: Transaction) => Promise<T>, options?: TransactionOptions): Promise<T>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Referensi ke database Firestore untuk menjalankan transaksi ini terhadap.
fungsi pembaruan (Transaksi: Transaksi ) => Janji <T> Fungsi untuk dieksekusi dalam konteks transaksi.
pilihan Opsi Transaksi Opsi Opsi untuk mengonfigurasi jumlah maksimum upaya untuk berkomitmen.

Pengembalian:

Janji <T>

Jika transaksi selesai dengan sukses atau secara eksplisit dibatalkan ( updateFunction mengembalikan janji yang gagal), janji yang dikembalikan oleh updateFunction dikembalikan ke sini. Jika tidak, jika transaksi gagal, janji yang ditolak dengan kesalahan kegagalan yang sesuai dikembalikan.

SetIndexConfiguration (Firestore, Configuration)

API ini disediakan sebagai pratinjau untuk pengembang dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini di lingkungan produksi.

Alih -alih membuat indeks cache secara manual, pertimbangkan untuk menggunakan enablePersistentCacheIndexAutoCreation() untuk membiarkan SDK memutuskan apakah akan membuat indeks cache untuk kueri yang berjalan secara lokal.

Mengkonfigurasi Pengindeksan untuk Eksekusi Kueri Lokal. Konfigurasi indeks sebelumnya ditimpa. Promise itu diselesaikan setelah konfigurasi indeks telah bertahan.

Entri indeks itu sendiri dibuat secara tidak sinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan bahkan jika indeks belum tersedia. Eksekusi kueri akan secara otomatis mulai menggunakan indeks setelah entri indeks ditulis.

Indeks hanya didukung dengan persistensi indexedDB. Jika IndexedDB tidak diaktifkan, konfigurasi indeks apa pun diabaikan.

Tanda tangan:

export declare function setIndexConfiguration(firestore: Firestore, configuration: IndexConfiguration): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Instance Firestore untuk mengonfigurasi indeks.
konfigurasi Konfigurasi Indeks Definisi indeks.

Pengembalian:

Janji<batal>

Promise yang diselesaikan begitu semua indeks berhasil dikonfigurasi.

Pengecualian

FirestoreError Jika format JSON tidak valid.

SetIndexConfiguration (Firestore, JSON)

API ini disediakan sebagai pratinjau untuk pengembang dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini di lingkungan produksi.

Alih -alih membuat indeks cache secara manual, pertimbangkan untuk menggunakan enablePersistentCacheIndexAutoCreation() untuk membiarkan SDK memutuskan apakah akan membuat indeks cache untuk kueri yang berjalan secara lokal.

Mengkonfigurasi Pengindeksan untuk Eksekusi Kueri Lokal. Konfigurasi indeks sebelumnya ditimpa. Promise itu diselesaikan setelah konfigurasi indeks telah bertahan.

Entri indeks itu sendiri dibuat secara tidak sinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan bahkan jika indeks belum tersedia. Eksekusi kueri akan secara otomatis mulai menggunakan indeks setelah entri indeks ditulis.

Indeks hanya didukung dengan persistensi indexedDB. Invoke enableIndexedDbPersistence() atau enableMultiTabIndexedDbPersistence() sebelum menetapkan konfigurasi indeks. Jika IndexedDB tidak diaktifkan, konfigurasi indeks apa pun diabaikan.

Metode ini menerima format JSON yang diekspor oleh Firebase CLI ( firebase firestore:indexes ). Jika format JSON tidak valid, metode ini melakukan kesalahan.

Tanda tangan:

export declare function setIndexConfiguration(firestore: Firestore, json: string): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran Instance Firestore untuk mengonfigurasi indeks.
json rangkaian Format JSON diekspor oleh Firebase CLI.

Pengembalian:

Janji<batal>

Promise yang diselesaikan begitu semua indeks berhasil dikonfigurasi.

Pengecualian

FirestoreError Jika format JSON tidak valid.

hentikan (firestore)

Mengakhiri instance Firestore yang disediakan.

Setelah memanggil terminate() hanya fungsi clearIndexedDbPersistence() yang dapat digunakan. Fungsi lain apa pun akan melempar FirestoreError .

Untuk memulai kembali setelah penghentian, buat instance baru FirebaseFirestore dengan getFirestore () .

Pengakhiran tidak membatalkan penulisan yang tertunda, dan janji apa pun yang menunggu respons dari server tidak akan diselesaikan. Jika Anda memiliki ketekunan diaktifkan, lain kali Anda memulai instance ini, itu akan melanjutkan pengiriman tulisan ini ke server.

Tanda tangan:

export declare function terminate(firestore: Firestore): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran

Pengembalian:

Janji<batal>

Promise yang diselesaikan ketika instance telah berhasil diakhiri.

WaitForpendingwrites (Firestore)

Menunggu sampai semua yang saat ini tertunda menulis untuk pengguna aktif telah diakui oleh backend.

Janji yang dikembalikan segera diselesaikan jika tidak ada tulisan yang luar biasa. Kalau tidak, janji menunggu semua penulisan yang dikeluarkan sebelumnya (termasuk yang ditulis dalam sesi aplikasi sebelumnya), tetapi tidak menunggu penulisan yang ditambahkan setelah fungsi dipanggil. Jika Anda ingin menunggu tulisan tambahan, hubungi waitForPendingWrites() lagi.

Setiap janji waitForPendingWrites() yang luar biasa ditolak selama perubahan pengguna.

Tanda tangan:

export declare function waitForPendingWrites(firestore: Firestore): Promise<void>;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran

Pengembalian:

Janji<batal>

Promise yang diselesaikan ketika semua penulisan saat ini tertunda telah diakui oleh backend.

WriteBatch (Firestore)

Membuat batch tulis, digunakan untuk melakukan beberapa tulisan sebagai operasi atom tunggal. Jumlah maksimum penulisan yang diizinkan dalam satu writeBatch adalah 500.

Tidak seperti transaksi, write batch bertahan secara offline dan karenanya lebih disukai ketika Anda tidak perlu mengkondisikan penulisan Anda pada data baca.

Tanda tangan:

export declare function writeBatch(firestore: Firestore): WriteBatch;

Parameter

Parameter Jenis Keterangan
toko api toko pemadam kebakaran

Pengembalian:

WriteBatch

WriteBatch yang dapat digunakan untuk secara atom melaksanakan beberapa tulisan.

fungsi()

menghitung()

Buat objek agregatefield yang dapat digunakan untuk menghitung jumlah dokumen dalam set hasil kueri.

Tanda tangan:

export declare function count(): AggregateField<number>;

Pengembalian:

Bidang Agregat <angka>

deletefield ()

Mengembalikan sentinel untuk digunakan dengan updateDoc () atau setDoc () dengan {merge: true} untuk menandai bidang untuk penghapusan.

Tanda tangan:

export declare function deleteField(): FieldValue;

Pengembalian:

Nilai Bidang

DocumentId ()

Mengembalikan Sentinel FieldPath khusus untuk merujuk ke ID dokumen. Ini dapat digunakan dalam kueri untuk mengurutkan atau memfilter berdasarkan ID dokumen.

Tanda tangan:

export declare function documentId(): FieldPath;

Pengembalian:

Jalur Lapangan

getFirestore ()

Mengembalikan instance firestore default yang ada yang terkait dengan firebaseApp default . Jika tidak ada contoh, inisialisasi instance baru dengan pengaturan default.

Tanda tangan:

export declare function getFirestore(): Firestore;

Pengembalian:

toko pemadam kebakaran

Instance Firestore default dari aplikasi default.

MemoryeAgerGagecollector ()

Menciptakan instance dari MemoryEagerGarbageCollector . Ini juga merupakan pengumpul sampah default kecuali jika ditentukan secara eksplisit sebaliknya.

Tanda tangan:

export declare function memoryEagerGarbageCollector(): MemoryEagerGarbageCollector;

Pengembalian:

Memoryeagegarbagecollector

PersistentMultipletabManager ()

Menciptakan contoh PersistentMultipleTabManager .

Tanda tangan:

export declare function persistentMultipleTabManager(): PersistentMultipleTabManager;

Pengembalian:

PersistentMultipletabManager

serverTimestamp ()

Mengembalikan sentinel yang digunakan dengan setDoc () atau diperbarui () untuk memasukkan cap waktu yang dihasilkan server dalam data tertulis.

Tanda tangan:

export declare function serverTimestamp(): FieldValue;

Pengembalian:

Nilai Bidang

fungsi (databaseid, ...)

getFirestore (databaseid)

API ini disediakan sebagai pratinjau untuk pengembang dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini di lingkungan produksi.

Mengembalikan instance Firestore bernama yang ada yang terkait dengan firebaseApp default . Jika tidak ada contoh, inisialisasi instance baru dengan pengaturan default.

Tanda tangan:

export declare function getFirestore(databaseId: string): Firestore;

Parameter

Parameter Jenis Keterangan
databaseId rangkaian Nama basis data.

Pengembalian:

toko pemadam kebakaran

Instance Firestore bernama dari aplikasi default.

fungsi (elemen, ...)

ArrayRemove (Elemen)

Mengembalikan nilai khusus yang dapat digunakan dengan setDoc () atau yang memberitahu server untuk menghapus elemen yang diberikan dari nilai array apa pun yang sudah ada di server. Semua contoh dari setiap elemen yang ditentukan akan dihapus dari array. Jika bidang yang dimodifikasi belum menjadi array, itu akan ditimpa dengan array kosong.

Tanda tangan:

export declare function arrayRemove(...elements: unknown[]): FieldValue;

Parameter

Parameter Jenis Keterangan
elemen tidak dikenal[] Elemen untuk dihapus dari array.

Pengembalian:

Nilai Bidang

Sentinel FieldValue untuk digunakan dalam panggilan ke setDoc() atau updateDoc()

Arrayunion (elemen)

Mengembalikan nilai khusus yang dapat digunakan dengan setDoc () atau updateDoc () yang memberi tahu server untuk menyatukan elemen yang diberikan dengan nilai array apa pun yang sudah ada di server. Setiap elemen yang ditentukan yang belum ada dalam array akan ditambahkan ke akhir. Jika bidang yang dimodifikasi belum menjadi array, itu akan ditimpa dengan array yang berisi elemen yang ditentukan dengan tepat.

Tanda tangan:

export declare function arrayUnion(...elements: unknown[]): FieldValue;

Parameter

Parameter Jenis Keterangan
elemen tidak dikenal[] Elemen -elemen untuk menyatukan ke dalam array.

Pengembalian:

Nilai Bidang

Sentinel FieldValue untuk digunakan dalam panggilan ke setDoc() atau updateDoc() .

fungsi (bidang, ...)

rata -rata (bidang)

Buat objek agregatefield yang dapat digunakan untuk menghitung rata -rata bidang yang ditentukan pada berbagai dokumen dalam set hasil kueri.

Tanda tangan:

export declare function average(field: string | FieldPath): AggregateField<number | null>;

Parameter

Parameter Jenis Keterangan
bidang tali | Jalur Lapangan Menentukan bidang ke rata -rata di seluruh set hasil.

Pengembalian:

Bidang Agregat <angka | batal>

jumlah(bidang)

Buat objek agregatefield yang dapat digunakan untuk menghitung jumlah bidang yang ditentukan pada berbagai dokumen dalam set hasil kueri.

Tanda tangan:

export declare function sum(field: string | FieldPath): AggregateField<number>;

Parameter

Parameter Jenis Keterangan
bidang tali | Jalur Lapangan Menentukan bidang yang akan dijumlahkan di set hasil.

Pengembalian:

Bidang Agregat <angka>

fungsi (fieldpath, ...)

orderby (fieldpath, directionstr)

Membuat QueryOrderByConstraint yang mengurutkan hasil kueri berdasarkan bidang yang ditentukan, secara opsional dalam urutan menurun alih -alih naik.

Tanda tangan:

export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;

Parameter

Parameter Jenis Keterangan
Fieldpath tali | Jalur Lapangan Bidang untuk diurutkan.
Directionstr OrderByDirection Arah opsional untuk mengurutkan berdasarkan ('ASC' atau 'desc'). Jika tidak ditentukan, pesanan akan naik.

Pengembalian:

QueryOrderByConstraint

QueryOrderByConstraint .

where(fieldPath, opStr, value)

Creates a QueryFieldFilterConstraint that enforces that documents must contain the specified field and that the value should satisfy the relation constraint provided.

Tanda tangan:

export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;

Parameter

Parameter Jenis Keterangan
fieldPath tali | Jalur Lapangan The path to compare
opStr WhereFilterOp The operation string (eg "&lt;", "&lt;=", "==", "&lt;", "&lt;=", "!=").
nilai tidak dikenal The value for comparison

Pengembalian:

QueryFieldFilterConstraint

The created QueryFieldFilterConstraint .

function(fieldValues, ...)

endAt(fieldValues)

Creates a QueryEndAtConstraint that modifies the result set to end at the provided fields relative to the order of the query. The order of the field values must match the order of the order by clauses of the query.

Tanda tangan:

export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;

Parameter

Parameter Jenis Keterangan
fieldValues tidak dikenal[] The field values to end this query at, in order of the query's order by.

Pengembalian:

QueryEndAtConstraint

A QueryEndAtConstraint to pass to query()

endBefore(fieldValues)

Creates a QueryEndAtConstraint that modifies the result set to end before the provided fields relative to the order of the query. The order of the field values must match the order of the order by clauses of the query.

Tanda tangan:

export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;

Parameter

Parameter Jenis Keterangan
fieldValues tidak dikenal[] The field values to end this query before, in order of the query's order by.

Pengembalian:

QueryEndAtConstraint

A QueryEndAtConstraint to pass to query()

startAfter(fieldValues)

Creates a QueryStartAtConstraint that modifies the result set to start after the provided fields relative to the order of the query. The order of the field values must match the order of the order by clauses of the query.

Tanda tangan:

export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;

Parameter

Parameter Jenis Keterangan
fieldValues tidak dikenal[] The field values to start this query after, in order of the query's order by.

Pengembalian:

QueryStartAtConstraint

A QueryStartAtConstraint to pass to query()

startAt(fieldValues)

Creates a QueryStartAtConstraint that modifies the result set to start at the provided fields relative to the order of the query. The order of the field values must match the order of the order by clauses of the query.

Tanda tangan:

export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;

Parameter

Parameter Jenis Keterangan
fieldValues tidak dikenal[] The field values to start this query at, in order of the query's order by.

Pengembalian:

QueryStartAtConstraint

A QueryStartAtConstraint to pass to query() .

function(indexManager, ...)

deleteAllPersistentCacheIndexes(indexManager)

Removes all persistent cache indexes.

Please note this function will also deletes indexes generated by setIndexConfiguration() , which is deprecated.

Tanda tangan:

export declare function deleteAllPersistentCacheIndexes(indexManager: PersistentCacheIndexManager): void;

Parameter

Parameter Jenis Keterangan
indexManager PersistentCacheIndexManager

Pengembalian:

ruang kosong

disablePersistentCacheIndexAutoCreation(indexManager)

Stops creating persistent cache indexes automatically for local query execution. The indexes which have been created by calling enablePersistentCacheIndexAutoCreation() still take effect.

Tanda tangan:

export declare function disablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;

Parameter

Parameter Jenis Keterangan
indexManager PersistentCacheIndexManager

Pengembalian:

ruang kosong

enablePersistentCacheIndexAutoCreation(indexManager)

Enables the SDK to create persistent cache indexes automatically for local query execution when the SDK believes cache indexes can help improve performance.

This feature is disabled by default.

Tanda tangan:

export declare function enablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;

Parameter

Parameter Jenis Keterangan
indexManager PersistentCacheIndexManager

Pengembalian:

ruang kosong

function(left, ...)

aggregateFieldEqual(left, right)

Compares two 'AggregateField ` instances for equality.

Tanda tangan:

export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;

Parameter

Parameter Jenis Keterangan
kiri Bidang Agregat <tidak diketahui> Compare this AggregateField to the right .
Kanan Bidang Agregat <tidak diketahui> Compare this AggregateField to the left .

Pengembalian:

boolean

aggregateQuerySnapshotEqual(left, right)

Compares two AggregateQuerySnapshot instances for equality.

Two AggregateQuerySnapshot instances are considered "equal" if they have underlying queries that compare equal, and the same data.

Tanda tangan:

export declare function aggregateQuerySnapshotEqual<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(left: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>, right: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>): boolean;

Parameter

Parameter Jenis Keterangan
kiri Snapshot Kueri Agregat <AggregateSpecType, AppModelType, DbModelType> The first AggregateQuerySnapshot to compare.
Kanan Snapshot Kueri Agregat <AggregateSpecType, AppModelType, DbModelType> The second AggregateQuerySnapshot to compare.

Pengembalian:

boolean

true if the objects are "equal", as defined above, or false otherwise.

queryEqual(left, right)

Returns true if the provided queries point to the same collection and apply the same constraints.

Tanda tangan:

export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;

Parameter

Parameter Jenis Keterangan
kiri Pertanyaan <AppModelType, DbModelType> A Query to compare.
Kanan Pertanyaan <AppModelType, DbModelType> A Query to compare.

Pengembalian:

boolean

true if the references point to the same location in the same Firestore database.

refEqual(left, right)

Returns true if the provided references are equal.

Tanda tangan:

export declare function refEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>, right: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>): boolean;

Parameter

Parameter Jenis Keterangan
kiri Referensi Dokumen <AppModelType, DbModelType> | KoleksiReferensi <AppModelType, DbModelType> A reference to compare.
Kanan Referensi Dokumen <AppModelType, DbModelType> | KoleksiReferensi <AppModelType, DbModelType> A reference to compare.

Pengembalian:

boolean

true if the references point to the same location in the same Firestore database.

snapshotEqual(left, right)

Returns true if the provided snapshots are equal.

Tanda tangan:

export declare function snapshotEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>, right: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>): boolean;

Parameter

Parameter Jenis Keterangan
kiri DocumentSnapshot <AppModelType, DbModelType> | QuerySnapshot <AppModelType, DbModelType> A snapshot to compare.
Kanan DocumentSnapshot <AppModelType, DbModelType> | QuerySnapshot <AppModelType, DbModelType> A snapshot to compare.

Pengembalian:

boolean

true if the snapshots are equal.

function(limit, ...)

limit(limit)

Creates a QueryLimitConstraint that only returns the first matching documents.

Tanda tangan:

export declare function limit(limit: number): QueryLimitConstraint;

Parameter

Parameter Jenis Keterangan
membatasi nomor Jumlah maksimum item yang akan dikembalikan.

Pengembalian:

QueryLimitConstraint

The created QueryLimitConstraint .

limitToLast(limit)

Creates a QueryLimitConstraint that only returns the last matching documents.

You must specify at least one orderBy clause for limitToLast queries, otherwise an exception will be thrown during execution.

Tanda tangan:

export declare function limitToLast(limit: number): QueryLimitConstraint;

Parameter

Parameter Jenis Keterangan
membatasi nomor Jumlah maksimum item yang akan dikembalikan.

Pengembalian:

QueryLimitConstraint

The created QueryLimitConstraint .

function(logLevel, ...)

setLogLevel(logLevel)

Sets the verbosity of Cloud Firestore logs (debug, error, or silent).

Tanda tangan:

export declare function setLogLevel(logLevel: LogLevel): void;

Parameter

Parameter Jenis Keterangan
tingkat log Tingkat Log The verbosity you set for activity and error logging. Dapat berupa salah satu dari nilai berikut:
  • debug for the most verbose logging level, primarily for debugging.
  • error to log errors only.
  • silent to turn off logging.

Pengembalian:

ruang kosong

function(n, ...)

increment(n)

Returns a special value that can be used with setDoc() or updateDoc() that tells the server to increment the field's current value by the given value.

If either the operand or the current field value uses floating point precision, all arithmetic follows IEEE 754 semantics. If both values are integers, values outside of JavaScript's safe number range ( Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER ) are also subject to precision loss. Furthermore, once processed by the Firestore backend, all integer operations are capped between -2^63 and 2^63-1.

If the current field value is not of type number , or if the field does not yet exist, the transformation sets the field to the given value.

Tanda tangan:

export declare function increment(n: number): FieldValue;

Parameter

Parameter Jenis Keterangan
N nomor The value to increment by.

Pengembalian:

Nilai Bidang

The FieldValue sentinel for use in a call to setDoc() or updateDoc()

function(query, ...)

getAggregateFromServer(query, aggregateSpec)

Calculates the specified aggregations over the documents in the result set of the given query without actually downloading the documents.

Using this function to perform aggregations is efficient because only the final aggregation values, not the documents' data, are downloaded. This function can perform aggregations of the documents in cases where the result set is prohibitively large to download entirely (thousands of documents).

The result received from the server is presented, unaltered, without considering any local state. That is, documents in the local cache are not taken into consideration, neither are local modifications not yet synchronized with the server. Previously-downloaded results, if any, are not used. Every invocation of this function necessarily involves a round trip to the server.

Tanda tangan:

export declare function getAggregateFromServer<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, aggregateSpec: AggregateSpecType): Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The query whose result set is aggregated over.
aggregateSpec AggregateSpecType An AggregateSpec object that specifies the aggregates to perform over the result set. The AggregateSpec specifies aliases for each aggregate, which can be used to retrieve the aggregate result.

Pengembalian:

Promise< AggregateQuerySnapshot <AggregateSpecType, AppModelType, DbModelType>>

Contoh

const aggregateSnapshot = await getAggregateFromServer(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;

getCountFromServer(query)

Calculates the number of documents in the result set of the given query without actually downloading the documents.

Using this function to count the documents is efficient because only the final count, not the documents' data, is downloaded. This function can count the documents in cases where the result set is prohibitively large to download entirely (thousands of documents).

The result received from the server is presented, unaltered, without considering any local state. That is, documents in the local cache are not taken into consideration, neither are local modifications not yet synchronized with the server. Previously-downloaded results, if any, are not used. Every invocation of this function necessarily involves a round trip to the server.

Tanda tangan:

export declare function getCountFromServer<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<AggregateQuerySnapshot<{
    count: AggregateField<number>;
}, AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The query whose result set size is calculated.

Pengembalian:

Promise< AggregateQuerySnapshot <{ count: AggregateField <number>; }, AppModelType, DbModelType>>

A Promise that will be resolved with the count; the count can be retrieved from snapshot.data().count , where snapshot is the AggregateQuerySnapshot to which the returned Promise resolves.

getDocs(query)

Executes the query and returns the results as a QuerySnapshot .

Tanda tangan:

export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType>

Pengembalian:

Promise< QuerySnapshot <AppModelType, DbModelType>>

A Promise that will be resolved with the results of the query.

getDocsFromCache(query)

Executes the query and returns the results as a QuerySnapshot from cache. Returns an empty result set if no documents matching the query are currently cached.

Tanda tangan:

export declare function getDocsFromCache<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType>

Pengembalian:

Promise< QuerySnapshot <AppModelType, DbModelType>>

A Promise that will be resolved with the results of the query.

getDocsFromServer(query)

Executes the query and returns the results as a QuerySnapshot from the server. Returns an error if the network is not available.

Tanda tangan:

export declare function getDocsFromServer<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType>

Pengembalian:

Promise< QuerySnapshot <AppModelType, DbModelType>>

A Promise that will be resolved with the results of the query.

onSnapshot(query, observer)

Attaches a listener for QuerySnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks. The listener can be cancelled by calling the function that is returned when onSnapshot is called.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, observer: {
    next?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The query to listen to.
pengamat { next?: (snapshot: QuerySnapshot <AppModelType, DbModelType>) => void; error?: (error: FirestoreError ) => void; complete?: () => void; } A single object containing next and error callbacks.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

onSnapshot(query, options, observer)

Attaches a listener for QuerySnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks. The listener can be cancelled by calling the function that is returned when onSnapshot is called.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, options: SnapshotListenOptions, observer: {
    next?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The query to listen to.
pilihan SnapshotListenOptions Options controlling the listen behavior.
pengamat { next?: (snapshot: QuerySnapshot <AppModelType, DbModelType>) => void; error?: (error: FirestoreError ) => void; complete?: () => void; } A single object containing next and error callbacks.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

onSnapshot(query, onNext, onError, onCompletion)

Attaches a listener for QuerySnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks. The listener can be cancelled by calling the function that is returned when onSnapshot is called.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, onNext: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The query to listen to.
onNext (snapshot: QuerySnapshot <AppModelType, DbModelType>) => void A callback to be called every time a new QuerySnapshot is available.
diError (error: FirestoreError ) => void A callback to be called if the listen fails or is cancelled. No further callbacks will occur.
dalam penyelesaian () => batal Can be provided, but will not be called since streams are never ending.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

onSnapshot(query, options, onNext, onError, onCompletion)

Attaches a listener for QuerySnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks. The listener can be cancelled by calling the function that is returned when onSnapshot is called.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, options: SnapshotListenOptions, onNext: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The query to listen to.
pilihan SnapshotListenOptions Options controlling the listen behavior.
onNext (snapshot: QuerySnapshot <AppModelType, DbModelType>) => void A callback to be called every time a new QuerySnapshot is available.
diError (error: FirestoreError ) => void A callback to be called if the listen fails or is cancelled. No further callbacks will occur.
dalam penyelesaian () => batal Can be provided, but will not be called since streams are never ending.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

query(query, compositeFilter, queryConstraints)

Creates a new immutable instance of Query that is extended to also include additional query constraints.

Tanda tangan:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The Query instance to use as a base for the new constraints.
compositeFilter QueryCompositeFilterConstraint The QueryCompositeFilterConstraint to apply. Create QueryCompositeFilterConstraint using and() or or() .
queryConstraints QueryNonFilterConstraint [] Additional QueryNonFilterConstraint s to apply (eg orderBy() , membatasi() ).

Pengembalian:

Pertanyaan <AppModelType, DbModelType>

Pengecualian

if any of the provided query constraints cannot be combined with the existing or new constraints.

query(query, queryConstraints)

Creates a new immutable instance of Query that is extended to also include additional query constraints.

Tanda tangan:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;

Parameter

Parameter Jenis Keterangan
pertanyaan Pertanyaan <AppModelType, DbModelType> The Query instance to use as a base for the new constraints.
queryConstraints QueryConstraint [] The list of QueryConstraint s to apply.

Pengembalian:

Pertanyaan <AppModelType, DbModelType>

Pengecualian

if any of the provided query constraints cannot be combined with the existing or new constraints.

function(queryConstraints, ...)

and(queryConstraints)

Creates a new QueryCompositeFilterConstraint that is a conjunction of the given filter constraints. A conjunction filter includes a document if it satisfies all of the given filters.

Tanda tangan:

export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

Parameter

Parameter Jenis Keterangan
queryConstraints QueryFilterConstraint [] Opsional. The list of QueryFilterConstraint s to perform a conjunction for. These must be created with calls to where() , atau() , atau dan() .

Pengembalian:

QueryCompositeFilterConstraint

The newly created QueryCompositeFilterConstraint .

or(queryConstraints)

Creates a new QueryCompositeFilterConstraint that is a disjunction of the given filter constraints. A disjunction filter includes a document if it satisfies any of the given filters.

Tanda tangan:

export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

Parameter

Parameter Jenis Keterangan
queryConstraints QueryFilterConstraint [] Opsional. The list of QueryFilterConstraint s to perform a disjunction for. These must be created with calls to where() , atau() , atau dan() .

Pengembalian:

QueryCompositeFilterConstraint

The newly created QueryCompositeFilterConstraint .

function(reference, ...)

addDoc(reference, data)

Add a new document to specified CollectionReference with the given data, assigning it a document ID automatically.

Tanda tangan:

export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
referensi KoleksiReferensi <AppModelType, DbModelType> A reference to the collection to add this document to.
data WithFieldValue <AppModelType> An Object containing the data for the new document.

Pengembalian:

Promise< DocumentReference <AppModelType, DbModelType>>

A Promise resolved with a DocumentReference pointing to the newly created document after it has been written to the backend (Note that it won't resolve while you're offline).

collection(reference, path, pathSegments)

Gets a CollectionReference instance that refers to a subcollection of reference at the the specified relative path.

Tanda tangan:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Parameter

Parameter Jenis Keterangan
referensi KoleksiReferensi <AppModelType, DbModelType> A reference to a collection.
jalur rangkaian A slash-separated path to a collection.
segmen jalur rangkaian[] Additional path segments to apply relative to the first argument.

Pengembalian:

KoleksiReferensi < DocumentData , DocumentData >

The CollectionReference instance.

Pengecualian

If the final path has an even number of segments and does not point to a collection.

collection(reference, path, pathSegments)

Gets a CollectionReference instance that refers to a subcollection of reference at the the specified relative path.

Tanda tangan:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to a Firestore document.
jalur rangkaian A slash-separated path to a collection.
segmen jalur rangkaian[] Additional path segments that will be applied relative to the first argument.

Pengembalian:

KoleksiReferensi < DocumentData , DocumentData >

The CollectionReference instance.

Pengecualian

If the final path has an even number of segments and does not point to a collection.

deleteDoc(reference)

Deletes the document referred to by the specified DocumentReference .

Tanda tangan:

export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to delete.

Pengembalian:

Janji<batal>

A Promise resolved once the document has been successfully deleted from the backend (note that it won't resolve while you're offline).

doc(reference, path, pathSegments)

Gets a DocumentReference instance that refers to a document within reference at the specified relative path. If no path is specified, an automatically-generated unique ID will be used for the returned DocumentReference .

Tanda tangan:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;

Parameter

Parameter Jenis Keterangan
referensi KoleksiReferensi <AppModelType, DbModelType> A reference to a collection.
jalur rangkaian A slash-separated path to a document. Has to be omitted to use auto-genrated IDs.
segmen jalur rangkaian[] Additional path segments that will be applied relative to the first argument.

Pengembalian:

Referensi Dokumen <AppModelType, DbModelType>

The DocumentReference instance.

Pengecualian

If the final path has an odd number of segments and does not point to a document.

doc(reference, path, pathSegments)

Gets a DocumentReference instance that refers to a document within reference at the specified relative path.

Tanda tangan:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to a Firestore document.
jalur rangkaian A slash-separated path to a document.
segmen jalur rangkaian[] Additional path segments that will be applied relative to the first argument.

Pengembalian:

Referensi Dokumen < DocumentData , DocumentData >

The DocumentReference instance.

Pengecualian

If the final path has an odd number of segments and does not point to a document.

getDoc(reference)

Reads the document referred to by this DocumentReference .

Tanda tangan:

export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> The reference of the document to fetch.

Pengembalian:

Promise< DocumentSnapshot <AppModelType, DbModelType>>

A Promise resolved with a DocumentSnapshot containing the current document contents.

getDocFromCache(reference)

Reads the document referred to by this DocumentReference from cache. Returns an error if the document is not currently cached.

Tanda tangan:

export declare function getDocFromCache<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType>

Pengembalian:

Promise< DocumentSnapshot <AppModelType, DbModelType>>

A Promise resolved with a DocumentSnapshot containing the current document contents.

getDocFromServer(reference)

Reads the document referred to by this DocumentReference from the server. Returns an error if the network is not available.

Tanda tangan:

export declare function getDocFromServer<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType>

Pengembalian:

Promise< DocumentSnapshot <AppModelType, DbModelType>>

A Promise resolved with a DocumentSnapshot containing the current document contents.

onSnapshot(reference, observer)

Attaches a listener for DocumentSnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, observer: {
    next?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to listen to.
pengamat { next?: (snapshot: DocumentSnapshot <AppModelType, DbModelType>) => void; error?: (error: FirestoreError ) => void; complete?: () => void; } A single object containing next and error callbacks.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

onSnapshot(reference, options, observer)

Attaches a listener for DocumentSnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, options: SnapshotListenOptions, observer: {
    next?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to listen to.
pilihan SnapshotListenOptions Options controlling the listen behavior.
pengamat { next?: (snapshot: DocumentSnapshot <AppModelType, DbModelType>) => void; error?: (error: FirestoreError ) => void; complete?: () => void; } A single object containing next and error callbacks.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

onSnapshot(reference, onNext, onError, onCompletion)

Attaches a listener for DocumentSnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, onNext: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to listen to.
onNext (snapshot: DocumentSnapshot <AppModelType, DbModelType>) => void A callback to be called every time a new DocumentSnapshot is available.
diError (error: FirestoreError ) => void A callback to be called if the listen fails or is cancelled. No further callbacks will occur.
dalam penyelesaian () => batal Can be provided, but will not be called since streams are never ending.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

onSnapshot(reference, options, onNext, onError, onCompletion)

Attaches a listener for DocumentSnapshot events. You may either pass individual onNext and onError callbacks or pass a single observer object with next and error callbacks.

NOTE: Although an onCompletion callback can be provided, it will never be called because the snapshot stream is never-ending.

Tanda tangan:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, options: SnapshotListenOptions, onNext: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to listen to.
pilihan SnapshotListenOptions Options controlling the listen behavior.
onNext (snapshot: DocumentSnapshot <AppModelType, DbModelType>) => void A callback to be called every time a new DocumentSnapshot is available.
diError (error: FirestoreError ) => void A callback to be called if the listen fails or is cancelled. No further callbacks will occur.
dalam penyelesaian () => batal Can be provided, but will not be called since streams are never ending.

Pengembalian:

Berhenti berlangganan

An unsubscribe function that can be called to cancel the snapshot listener.

setDoc(reference, data)

Writes to the document referred to by this DocumentReference . If the document does not yet exist, it will be created.

Tanda tangan:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to write.
data WithFieldValue <AppModelType> A map of the fields and values for the document.

Pengembalian:

Janji<batal>

A Promise resolved once the data has been successfully written to the backend (note that it won't resolve while you're offline).

setDoc(reference, data, options)

Writes to the document referred to by the specified DocumentReference . If the document does not yet exist, it will be created. If you provide merge or mergeFields , the provided data can be merged into an existing document.

Tanda tangan:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to write.
data PartialWithFieldValue <AppModelType> A map of the fields and values for the document.
pilihan Set Opsi An object to configure the set behavior.

Pengembalian:

Janji<batal>

A Promise resolved once the data has been successfully written to the backend (note that it won't resolve while you're offline).

updateDoc(reference, data)

Updates fields in the document referred to by the specified DocumentReference . The update will fail if applied to a document that does not exist.

Tanda tangan:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to update.
data Perbaharui data <DbModelType> An object containing the fields and values with which to update the document. Fields can contain dots to reference nested fields within the document.

Pengembalian:

Janji<batal>

A Promise resolved once the data has been successfully written to the backend (note that it won't resolve while you're offline).

updateDoc(reference, field, value, moreFieldsAndValues)

Updates fields in the document referred to by the specified DocumentReference The update will fail if applied to a document that does not exist.

Nested fields can be updated by providing dot-separated field path strings or by providing FieldPath objects.

Tanda tangan:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): Promise<void>;

Parameter

Parameter Jenis Keterangan
referensi Referensi Dokumen <AppModelType, DbModelType> A reference to the document to update.
bidang tali | Jalur Lapangan The first field to update.
nilai tidak dikenal Nilai pertama.
moreFieldsAndValues tidak dikenal[] Additional key value pairs.

Pengembalian:

Janji<batal>

A Promise resolved once the data has been successfully written to the backend (note that it won't resolve while you're offline).

function(settings, ...)

memoryLocalCache(settings)

Creates an instance of MemoryLocalCache . The instance can be set to FirestoreSettings.cache to tell the SDK which cache layer to use.

Tanda tangan:

export declare function memoryLocalCache(settings?: MemoryCacheSettings): MemoryLocalCache;

Parameter

Parameter Jenis Keterangan
pengaturan MemoryCacheSettings

Pengembalian:

MemoryLocalCache

memoryLruGarbageCollector(settings)

Creates an instance of MemoryLruGarbageCollector .

A target size can be specified as part of the setting parameter. The collector will start deleting documents once the cache size exceeds the given size. The default cache size is 40MB (40 * 1024 * 1024 bytes).

Tanda tangan:

export declare function memoryLruGarbageCollector(settings?: {
    cacheSizeBytes?: number;
}): MemoryLruGarbageCollector;

Parameter

Parameter Jenis Keterangan
pengaturan { cacheSizeBytes?: number; }

Pengembalian:

MemoryLruGarbageCollector

persistentLocalCache(settings)

Creates an instance of PersistentLocalCache . The instance can be set to FirestoreSettings.cache to tell the SDK which cache layer to use.

Persistent cache cannot be used in a Node.js environment.

Tanda tangan:

export declare function persistentLocalCache(settings?: PersistentCacheSettings): PersistentLocalCache;

Parameter

Parameter Jenis Keterangan
pengaturan PersistentCacheSettings

Pengembalian:

PersistentLocalCache

persistentSingleTabManager(settings)

Creates an instance of PersistentSingleTabManager .

Tanda tangan:

export declare function persistentSingleTabManager(settings: PersistentSingleTabManagerSettings | undefined): PersistentSingleTabManager;

Parameter

Parameter Jenis Keterangan
pengaturan PersistentSingleTabManagerSettings | belum diartikan Configures the created tab manager.

Pengembalian:

PersistentSingleTabManager

function(snapshot, ...)

endAt(snapshot)

Creates a QueryEndAtConstraint that modifies the result set to end at the provided document (inclusive). The end position is relative to the order of the query. The document must contain all of the fields provided in the orderBy of the query.

Tanda tangan:

export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

Parameter

Parameter Jenis Keterangan
foto DocumentSnapshot <AppModelType, DbModelType> The snapshot of the document to end at.

Pengembalian:

QueryEndAtConstraint

A QueryEndAtConstraint to pass to query()

endBefore(snapshot)

Creates a QueryEndAtConstraint that modifies the result set to end before the provided document (exclusive). The end position is relative to the order of the query. The document must contain all of the fields provided in the orderBy of the query.

Tanda tangan:

export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

Parameter

Parameter Jenis Keterangan
foto DocumentSnapshot <AppModelType, DbModelType> The snapshot of the document to end before.

Pengembalian:

QueryEndAtConstraint

A QueryEndAtConstraint to pass to query()

startAfter(snapshot)

Creates a QueryStartAtConstraint that modifies the result set to start after the provided document (exclusive). The starting position is relative to the order of the query. The document must contain all of the fields provided in the orderBy of the query.

Tanda tangan:

export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

Parameter

Parameter Jenis Keterangan
foto DocumentSnapshot <AppModelType, DbModelType> The snapshot of the document to start after.

Pengembalian:

QueryStartAtConstraint

A QueryStartAtConstraint to pass to query()

startAt(snapshot)

Creates a QueryStartAtConstraint that modifies the result set to start at the provided document (inclusive). The starting position is relative to the order of the query. The document must contain all of the fields provided in the orderBy of this query.

Tanda tangan:

export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

Parameter

Parameter Jenis Keterangan
foto DocumentSnapshot <AppModelType, DbModelType> The snapshot of the document to start at.

Pengembalian:

QueryStartAtConstraint

A QueryStartAtConstraint to pass to query() .

CACHE_SIZE_UNLIMITED

Constant used to indicate the LRU garbage collection should be disabled. Set this value as the cacheSizeBytes on the settings passed to the Firestore instance.

Tanda tangan:

CACHE_SIZE_UNLIMITED = -1

AddPrefixToKeys

Returns a new map where every key is prefixed with the outer key appended to a dot.

Tanda tangan:

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];
};

AggregateFieldType

The union of all AggregateField types that are supported by Firestore.

Tanda tangan:

export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;

AggregateSpecData

A type whose keys are taken from an AggregateSpec , and whose values are the result of the aggregation performed by the corresponding AggregateField from the input AggregateSpec .

Tanda tangan:

export declare type AggregateSpecData<T extends AggregateSpec> = {
    [P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};

Tipe Agregat

Union type representing the aggregate type to be performed.

Tanda tangan:

export declare type AggregateType = 'count' | 'avg' | 'sum';

ChildUpdateFields

Helper for calculating the nested fields for a given type T1. This is needed to distribute union types such as undefined | {...} (happens for optional props) or {a: A} | {b: B} .

In this use case, V is used to distribute the union types of T[K] on Record , since T[K] is evaluated as an expression and not distributed.

See https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types

Tanda tangan:

export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;

DocumentChangeType

The type of a DocumentChange may be 'added', 'removed', or 'modified'.

Tanda tangan:

export declare type DocumentChangeType = 'added' | 'removed' | 'modified';

FirestoreErrorCode

The set of Firestore status codes. The codes are the same at the ones exposed by gRPC here: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

Possible values: - 'cancelled': The operation was cancelled (typically by the caller). - 'unknown': Unknown error or an error from a different error domain. - 'invalid-argument': Client specified an invalid argument. Note that this differs from 'failed-precondition'. 'invalid-argument' indicates arguments that are problematic regardless of the state of the system (eg an invalid field name). - 'deadline-exceeded': Deadline expired before operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully. For example, a successful response from a server could have been delayed long enough for the deadline to expire. - 'not-found': Some requested document was not found. - 'already-exists': Some document that we attempted to create already exists. - 'permission-denied': The caller does not have permission to execute the specified operation. - 'resource-exhausted': Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space. - 'failed-precondition': Operation was rejected because the system is not in a state required for the operation's execution. - 'aborted': The operation was aborted, typically due to a concurrency issue like transaction aborts, etc. - 'out-of-range': Operation was attempted past the valid range. - 'unimplemented': Operation is not implemented or not supported/enabled. - 'internal': Internal errors. Berarti beberapa invarian yang diharapkan oleh sistem yang mendasarinya telah rusak. If you see one of these errors, something is very broken. - 'unavailable': The service is currently unavailable. This is most likely a transient condition and may be corrected by retrying with a backoff. - 'data-loss': Unrecoverable data loss or corruption. - 'unauthenticated': The request does not have valid authentication credentials for the operation.

Tanda tangan:

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';

FirestoreLocalCache

Union type from all supported SDK cache layer.

Tanda tangan:

export declare type FirestoreLocalCache = MemoryLocalCache | PersistentLocalCache;

ListenSource

Describe the source a query listens to.

Set to default to listen to both cache and server changes. Set to cache to listen to changes in cache only.

Tanda tangan:

export declare type ListenSource = 'default' | 'cache';

MemoryGarbageCollector

Union type from all support gabage collectors for memory local cache.

Tanda tangan:

export declare type MemoryGarbageCollector = MemoryEagerGarbageCollector | MemoryLruGarbageCollector;

NestedUpdateFields

For each field (eg 'bar'), find all nested keys (eg { 'bar.baz': T1, 'bar.qux': T2 } ). Intersect them together to make a single map containing all possible keys that are all marked as optional

Tanda tangan:

export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
    [K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;

OrderByDirection

The direction of a orderBy() clause is specified as 'desc' or 'asc' (descending or ascending).

Tanda tangan:

export declare type OrderByDirection = 'desc' | 'asc';

PartialWithFieldValue

Similar to Typescript's Partial<T> , but allows nested fields to be omitted and FieldValues to be passed in as property values.

Tanda tangan:

export declare type PartialWithFieldValue<T> = Partial<T> | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: PartialWithFieldValue<T[K]> | FieldValue;
} : never);

PersistentTabManager

A union of all available tab managers.

Tanda tangan:

export declare type PersistentTabManager = PersistentSingleTabManager | PersistentMultipleTabManager;

Primitif

Primitive types.

Tanda tangan:

export declare type Primitive = string | number | boolean | undefined | null;

QueryConstraintType

Describes the different query constraints available in this SDK.

Tanda tangan:

export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';

QueryFilterConstraint

QueryFilterConstraint is a helper union type that represents QueryFieldFilterConstraint and QueryCompositeFilterConstraint .

Tanda tangan:

export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;

QueryNonFilterConstraint

QueryNonFilterConstraint is a helper union type that represents QueryConstraints which are used to narrow or order the set of documents, but that do not explicitly filter on a document field. QueryNonFilterConstraint s are created by invoking orderBy() , dimulai dari() , startAfter() , endBefore() , endAt() , limit() or limitToLast() and can then be passed to query() to create a new query instance that also contains the QueryConstraint .

Tanda tangan:

export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;

Set Opsi

An options object that configures the behavior of setDoc() , and calls. These calls can be configured to perform granular merges instead of overwriting the target documents in their entirety by providing a SetOptions with merge: true .

Tanda tangan:

export declare type SetOptions = {
    readonly merge?: boolean;
} | {
    readonly mergeFields?: Array<string | FieldPath>;
};

Status Tugas

Represents the state of bundle loading tasks.

Both 'Error' and 'Success' are sinking state: task will abort or complete and there will be no more updates after they are reported.

Tanda tangan:

export declare type TaskState = 'Error' | 'Running' | 'Success';

Persatuan Ke Persimpangan

Given a union type U = T1 | T2 | ... , returns an intersected type (T1 & T2 & ...) .

Uses distributive conditional types and inference from conditional types. This works because multiple candidates for the same type variable in contra-variant positions causes an intersection type to be inferred. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection -jenis

Tanda tangan:

export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;

Perbaharui data

Update data (for use with updateDoc() ) that consists of field paths (eg 'foo' or 'foo.baz') mapped to values. Fields that contain dots reference nested fields within the document. FieldValues can be passed in as property values.

Tanda tangan:

export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: UpdateData<T[K]> | FieldValue;
} & NestedUpdateFields<T> : Partial<T>;

WhereFilterOp

Filter conditions in a where() clause are specified using the strings '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any', and 'not-in'.

Tanda tangan:

export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';

WithFieldValue

Allows FieldValues to be passed in as a property value while maintaining type safety.

Tanda tangan:

export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);