Functions
Fungsi | Deskripsi |
---|---|
fungsi(aplikasi, ...) | |
getFirestore(aplikasi) | Menampilkan instance Firestore default yang ada, yang dikaitkan dengan FirebaseApp yang disediakan. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default. |
getFirestore(aplikasi; databaseId) | (BETA) Menampilkan instance Firestore bernama yang sudah ada dan terkait dengan FirebaseApp yang disediakan. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default. |
InitializeFirestore(aplikasi, setelan, databaseId) | Melakukan inisialisasi instance Firestore baru dengan setelan yang diberikan. Hanya dapat dipanggil sebelum fungsi lain, termasuk getFirestore(). Jika setelan kustom kosong, fungsi ini sama dengan memanggil getFirestore(). |
function(firestore, ...) | |
clearIndexedDbPersistence(firestore) | Menghapus penyimpanan persisten. Ini termasuk penulisan tertunda dan dokumen yang di-cache.Harus dipanggil ketika instance Firestore tidak dimulai (setelah aplikasi dihentikan atau ketika aplikasi pertama kali diinisialisasi). Saat memulai, fungsi ini harus dipanggil sebelum fungsi lain (selain InitializeFirestore() atau getFirestore())). Jika instance Firestore masih berjalan, promise akan ditolak dengan kode error failed-precondition .Catatan: clearIndexedDbPersistence() terutama ditujukan untuk membantu menulis pengujian andal yang menggunakan Cloud Firestore. Enkripsi ini menggunakan mekanisme yang efisien untuk melepaskan data yang ada, tetapi tidak berupaya menimpa secara aman atau membuat data yang di-cache tidak dapat dipulihkan. Untuk aplikasi yang sensitif terhadap pengungkapan data yang di-cache di antara sesi pengguna, kami sangat menyarankan untuk tidak mengaktifkan persistensi sama sekali. |
collection(firestore, path, pathSegments) | Mendapatkan instance CollectionReference yang merujuk pada koleksi di jalur absolut yang ditentukan. |
collectionGroup(firestore, collectionId) | Membuat dan menampilkan instance Query baru yang menyertakan semua dokumen dalam database yang dimuat dalam koleksi atau subkoleksi dengan collectionId yang ditentukan. |
connectFirestoreEmulator(firestore, host, port, opsi) | Ubah instance ini untuk berkomunikasi dengan emulator Cloud Firestore.Catatan: Tindakan ini harus dipanggil sebelum instance ini digunakan untuk melakukan operasi apa pun. |
disableNetwork(firestore) | Menonaktifkan penggunaan jaringan untuk instance ini. Konfigurasi ini dapat diaktifkan kembali melalui enableNetwork(). Saat jaringan dinonaktifkan, setiap pemroses snapshot, panggilan getDoc() atau getDocs() akan menampilkan hasil dari cache, dan setiap operasi tulis akan dimasukkan ke dalam antrean sampai jaringan dipulihkan. |
doc(firestore, path, pathSegments) | Mendapatkan instance DocumentReference yang merujuk ke dokumen di jalur absolut yang ditentukan. |
enableIndexedDbPersistence(firestore, persistenSettings) | Upaya untuk mengaktifkan penyimpanan persisten, jika memungkinkan.Jika gagal, enableIndexedDbPersistence() akan menolak promise atau menampilkan pengecualian. Ada beberapa alasan mengapa hal ini bisa gagal, yang dapat diidentifikasi dengan code pada error.* failed-precondition: Aplikasi sudah dibuka di tab browser lain. * tidak diterapkan: Browser tidak kompatibel dengan implementasi persistensi offline.Perhatikan bahwa meskipun terjadi kegagalan, instance Firestore akan tetap dapat digunakan, tetapi persistensi offline akan dinonaktifkan.Catatan: enableIndexedDbPersistence() harus dipanggil sebelum fungsi lainnya (selain InitializeFirestore(), getFirestore(), atau clearIndexedDbPersistence().Persistensi tidak dapat digunakan di lingkungan Node.js. |
enableMultiTabIndexedDbPersistence(firestore) | Berupaya mengaktifkan penyimpanan persisten multi-tab, jika memungkinkan. Jika diaktifkan di semua tab, semua operasi akan berbagi akses ke persistensi lokal, termasuk eksekusi kueri bersama dan pembaruan dokumen lokal berkompensasi latensi di semua instance yang terhubung.Jika gagal, enableMultiTabIndexedDbPersistence() akan menolak promise atau menampilkan pengecualian. Ada beberapa alasan mengapa hal ini bisa gagal, yang dapat diidentifikasi dengan code pada error.* gagal-prakondisi: Aplikasi sudah terbuka di tab browser lain dan multi-tab tidak diaktifkan. * tidak diterapkan: Browser tidak kompatibel dengan implementasi persistensi offline.Perhatikan bahwa meskipun terjadi kegagalan, instance Firestore akan tetap dapat digunakan, tetapi persistensi offline akan dinonaktifkan. |
enableNetwork(firestore) | Mengaktifkan kembali penggunaan jaringan untuk instance Firestore ini setelah panggilan sebelumnya ke disableNetwork(). |
getPersistentCacheIndexManager(firestore) | Menampilkan Pengelola 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 cache lokal. |
nameQuery(firestore, name) | Membaca Kueri Firestore dari cache lokal, yang diidentifikasi berdasarkan nama tertentu.Kueri bernama dikemas ke dalam paket di sisi server (beserta 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, observer) | Melampirkan pemroses 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 pemroses sinkron satu sama lain, tetapi tidak berkaitan dengan apakah snapshot tersebut sinkron dengan server. Gunakan SnapshotMetadata di setiap pemroses untuk menentukan apakah snapshot berasal dari cache atau server. |
onSnapshotsInSync(firestore, onSync) | Melampirkan pemroses 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 pemroses sinkron satu sama lain, tetapi tidak berkaitan dengan apakah snapshot tersebut sinkron dengan server. Gunakan SnapshotMetadata di setiap pemroses untuk menentukan apakah snapshot berasal dari cache atau server. |
runTransaction(firestore, updateFunction, options) | Mengeksekusi updateFunction yang diberikan, lalu mencoba melakukan commit untuk perubahan yang diterapkan dalam transaksi. Jika pembacaan dokumen dalam transaksi telah berubah, Cloud Firestore akan mencoba kembali updateFunction . Jika gagal melakukan commit setelah 5 kali percobaan, transaksi akan gagal.Jumlah maksimum penulisan yang diizinkan dalam satu transaksi adalah 500. |
setIndexConfiguration(firestore, configuration) | (BETA) Mengonfigurasi pengindeksan untuk eksekusi kueri lokal. Konfigurasi indeks sebelumnya akan diganti. Promise akan me-resolve setelah konfigurasi indeks dipertahankan.Entri indeks itu sendiri dibuat secara asinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan meskipun indeksnya belum tersedia. Eksekusi kueri akan otomatis dimulai 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 akan me-resolve setelah konfigurasi indeks dipertahankan.Entri indeks itu sendiri dibuat secara asinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan meskipun indeksnya belum tersedia. Eksekusi kueri akan otomatis dimulai menggunakan indeks setelah entri indeks ditulis.Indeks hanya didukung dengan persistensi IndexedDb. Panggil enableIndexedDbPersistence() atau enableMultiTabIndexedDbPersistence() sebelum menetapkan 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 menampilkan error. |
Stop(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 FirebaseFirestore baru dengan getFirestore().Penghentian tidak membatalkan penulisan yang tertunda, dan setiap promise yang sedang menunggu respons dari server tidak akan diselesaikan. Jika persistensi diaktifkan, saat berikutnya Anda memulai instance ini, instance ini akan melanjutkan pengiriman penulisan ke server.Catatan: Dalam keadaan normal, Anda tidak perlu memanggil terminate() . Fungsi ini hanya berguna jika Anda ingin memaksa instance ini untuk melepaskan semua resource-nya atau bersama dengan clearIndexedDbPersistence() untuk memastikan bahwa semua status lokal dihancurkan di antara pengujian. |
waitForPendingWrites(firestore) | Menunggu hingga semua operasi tulis yang saat ini tertunda untuk pengguna aktif telah dikonfirmasi oleh backend.Promise yang ditampilkan akan segera di-resolve jika tidak ada operasi tulis yang belum terselesaikan. Jika tidak, promise akan menunggu semua penulisan yang dikeluarkan sebelumnya (termasuk yang ditulis dalam sesi aplikasi sebelumnya), tetapi tidak akan menunggu penulisan yang ditambahkan setelah fungsi dipanggil. Jika Anda ingin menunggu operasi tulis tambahan, panggil waitForPendingWrites() lagi.Janji waitForPendingWrites() yang belum dijanjikan akan ditolak selama perubahan pengguna. |
writeBatch(firestore) | Membuat batch tulis, yang digunakan untuk melakukan beberapa penulisan sebagai satu operasi atomik. Jumlah maksimum operasi tulis yang diizinkan dalam satu WriteBatch adalah 500.Tidak seperti transaksi, batch operasi tulis disimpan secara offline dan oleh karena itu lebih baik jika Anda tidak perlu mengondisikan penulisan pada data yang sudah dibaca. |
function() | |
count() | Membuat objek AggregateField yang dapat digunakan untuk menghitung jumlah dokumen dalam kumpulan hasil kueri. |
deleteField() | Menampilkan sentinel untuk digunakan dengan updateDoc() atau setDoc() dengan {merge: true} guna menandai kolom untuk dihapus. |
documentId() | Menampilkan sentinel khusus FieldPath untuk merujuk ke ID dokumen. Fungsi ini dapat digunakan dalam kueri untuk mengurutkan atau memfilter berdasarkan ID dokumen. |
getFirestore() | Menampilkan instance Firestore default yang ada, yang dikaitkan dengan FirebaseApp default. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default. |
memoryEagerGarbageCollector() | Membuat instance MemoryEagerGarbageCollector . Ini juga merupakan pembersih sampah memori default kecuali jika dinyatakan sebaliknya secara eksplisit. |
persistentMultipleTabManager() | Membuat instance PersistentMultipleTabManager . |
serverTimestamp() | Menampilkan sentinel yang digunakan dengan setDoc() atau updateDoc() untuk menyertakan stempel waktu yang dibuat server dalam data tertulis. |
function(databaseId, ...) | |
getFirestore(databaseId) | (BETA) Menampilkan instance Firestore bernama yang sudah ada dan dikaitkan dengan FirebaseApp default. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default. |
fungsi(elemen, ...) | |
arrayRemove(elemen) | Menampilkan nilai khusus yang dapat digunakan dengan setDoc() atau yang memberi tahu server untuk menghapus elemen yang diberikan dari nilai array apa pun yang sudah ada di server. Semua instance dari setiap elemen yang ditentukan akan dihapus dari array. Jika kolom yang diubah belum berupa array, kolom tersebut akan ditimpa dengan array kosong. |
arrayUnion(elemen) | Menampilkan 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 ditetapkan dan belum ada dalam array akan ditambahkan ke bagian akhir. Jika kolom yang dimodifikasi belum berupa array, kolom tersebut akan ditimpa dengan array yang berisi elemen yang ditentukan secara tepat. |
fungsi(kolom, ...) | |
average(kolom) | Membuat objek AggregateField yang dapat digunakan untuk menghitung rata-rata kolom tertentu pada rentang dokumen di kumpulan hasil kueri. |
sum(kolom) | Membuat objek AggregateField yang dapat digunakan untuk menghitung jumlah kolom tertentu pada rentang dokumen dalam kumpulan hasil kueri. |
function(fieldPath, ...) | |
orderBy(fieldPath, directionsStr) | Membuat QueryOrderByConstraint yang mengurutkan hasil kueri menurut kolom yang ditentukan, secara opsional dalam urutan menurun, bukan menaik.Catatan: Dokumen yang tidak berisi kolom yang ditentukan tidak akan ada dalam hasil kueri. |
where(fieldPath, opStr, value) | Membuat QueryFieldFilterConstraint yang menerapkan bahwa dokumen harus berisi kolom yang ditentukan dan bahwa nilai harus memenuhi batasan relasi yang diberikan. |
function(fieldValues, ...) | |
endAt(fieldValues) | Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir di kolom yang disediakan, sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri. |
endBefore(fieldValues) | Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir sebelum kolom yang disediakan sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri. |
startAfter(fieldValues) | Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai setelah kolom yang disediakan sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri. |
startAt(fieldValues) | Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai pada kolom yang disediakan, sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri. |
function(indexManager, ...) | |
deleteAllPersistentCacheIndexes(indexManager) | Menghapus semua indeks cache yang persisten.Perlu diperhatikan bahwa fungsi ini juga akan menghapus indeks yang dihasilkan oleh setIndexConfiguration() , yang sudah tidak digunakan lagi. |
disablePersistentCacheIndexAutoCreation(indexManager) | Menghentikan pembuatan indeks cache persisten secara otomatis untuk eksekusi kueri lokal. Indeks yang telah dibuat dengan memanggil enablePersistentCacheIndexAutoCreation() masih berlaku. |
enablePersistentCacheIndexAutoCreation(indexManager) | Memungkinkan SDK membuat indeks cache persisten secara otomatis untuk eksekusi kueri lokal jika SDK yakin bahwa indeks cache dapat membantu meningkatkan performa.Fitur ini dinonaktifkan secara default. |
fungsi(kiri, ...) | |
aggregateFieldEqual(kiri, kanan) | Membandingkan dua instance 'AggregateField` untuk mengetahui kesetaraannya. |
aggregateQuerySnapshotEqual(kiri, kanan) | Membandingkan dua instance AggregateQuerySnapshot untuk kesetaraan.Dua instance AggregateQuerySnapshot dianggap "setara" jika mereka memiliki kueri dasar yang membandingkan data yang sama dan sama. |
queryEqual(kiri, kanan) | Menampilkan true (benar) jika kueri yang diberikan mengarah ke koleksi yang sama dan menerapkan batasan yang sama. |
refEqual(kiri, kanan) | Menampilkan true (benar) jika referensi yang diberikan sama. |
snapshotEqual(kiri, kanan) | Menampilkan true (benar) jika snapshot yang diberikan sama. |
fungsi(batas, ...) | |
batas(batas) | Membuat QueryLimitConstraint yang hanya menampilkan dokumen pertama yang cocok. |
limitToLast(batas) | Membuat QueryLimitConstraint yang hanya menampilkan dokumen terakhir yang cocok.Anda harus menentukan setidaknya satu klausa orderBy untuk kueri limitToLast . Jika tidak, pengecualian akan ditampilkan selama eksekusi. |
function(logLevel, ...) | |
setLogLevel(logLevel) | Menetapkan panjang log Cloud Firestore (debug, error, atau silent). |
fungsi(n, ...) | |
inkrement(n) | Menampilkan nilai khusus yang dapat digunakan dengan setDoc() atau updateDoc() yang memberi tahu server untuk menambah nilai kolom saat ini dengan nilai yang diberikan.Jika operand atau nilai kolom saat ini menggunakan presisi floating point, semua aritmetika mengikuti semantik IEEE 754. Jika kedua nilai tersebut adalah bilangan bulat, nilai di luar rentang angka yang aman JavaScript (Number.MIN_SAFE_INTEGER hingga Number.MAX_SAFE_INTEGER ) juga dapat mengalami kerugian presisi. Selain itu, setelah diproses oleh backend Firestore, semua operasi bilangan bulat akan dibatasi antara -2^63 dan 2^63-1.Jika nilai kolom saat ini bukan berjenis number , atau jika kolom belum ada, transformasi akan menetapkan kolom ke nilai yang diberikan. |
fungsi(kueri, ...) | |
getAggregateFromServer(query, aggregateSpec) | Menghitung agregasi yang ditentukan pada dokumen dalam kumpulan hasil kueri yang diberikan tanpa benar-benar mendownload dokumen.Menggunakan fungsi ini untuk melakukan agregasi efisien karena hanya nilai agregasi akhir, bukan nilai dokumen mengunduh data. Fungsi ini dapat melakukan agregasi dokumen jika kumpulan hasil terlalu besar untuk didownload sepenuhnya (ribuan dokumen).Hasil yang diterima dari server disajikan, tidak diubah, tanpa mempertimbangkan status lokal apa pun. Artinya, dokumen dalam cache lokal tidak dipertimbangkan dan modifikasi lokal belum disinkronkan dengan server. Hasil yang telah didownload sebelumnya, jika ada, tidak akan digunakan. Setiap pemanggilan fungsi ini harus melibatkan perjalanan bolak-balik ke server. |
getCountFromServer(kueri) | Menghitung jumlah dokumen dalam kumpulan hasil kueri yang diberikan tanpa benar-benar mendownload dokumen.Menggunakan fungsi ini untuk menghitung dokumen adalah tindakan yang efisien karena hanya jumlah akhir, bukan jumlah dokumen mengunduh data. Fungsi ini dapat menghitung dokumen jika kumpulan hasil sangat besar untuk didownload seluruhnya (ribuan dokumen).Hasil yang diterima dari server disajikan, tidak diubah, tanpa mempertimbangkan status lokal apa pun. Artinya, dokumen dalam cache lokal tidak dipertimbangkan dan modifikasi lokal belum disinkronkan dengan server. Hasil yang telah didownload sebelumnya, jika ada, tidak akan digunakan. Setiap pemanggilan fungsi ini harus melibatkan perjalanan bolak-balik ke server. |
getDocs(kueri) | Mengeksekusi kueri dan menampilkan hasilnya sebagai QuerySnapshot .Catatan: getDocs() berupaya memberikan data terbaru jika memungkinkan dengan menunggu data dari server, tetapi mungkin menampilkan data yang di-cache atau gagal jika Anda sedang offline dan server tidak dapat dijangkau. Untuk menentukan perilaku ini, panggil getDocsFromCache() atau getDocsFromServer(). |
getDocsFromCache(kueri) | Mengeksekusi kueri dan menampilkan hasilnya sebagai QuerySnapshot dari cache. Menampilkan set hasil kosong jika tidak ada dokumen yang cocok dengan kueri yang saat ini di-cache. |
getDocsFromServer(kueri) | Menjalankan kueri dan menampilkan hasilnya sebagai QuerySnapshot dari server. Menampilkan error jika jaringan tidak tersedia. |
onSnapshot(kueri, pengamat) | Melampirkan pemroses untuk peristiwa QuerySnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error . Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot dipanggil.CATATAN: Meskipun dapat disediakan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
onSnapshot(kueri, opsi, observer) | Melampirkan pemroses untuk peristiwa QuerySnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error . Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot dipanggil.CATATAN: Meskipun dapat disediakan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
onSnapshot(query, onNext, onError, onCompletion) | Melampirkan pemroses untuk peristiwa QuerySnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error . Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot dipanggil.CATATAN: Meskipun dapat disediakan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
onSnapshot(kueri, opsi, onNext, onError, onCompletion) | Melampirkan pemroses untuk peristiwa QuerySnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error . Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot dipanggil.CATATAN: Meskipun dapat disediakan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
query(query, composerFilter, queryConstraints) | Membuat instance Query yang tidak dapat diubah dan diperluas untuk menyertakan batasan kueri tambahan juga. |
query(query, queryConstraints) | Membuat instance Query yang tidak dapat diubah dan diperluas untuk menyertakan batasan kueri tambahan juga. |
function(queryConstraints, ...) | |
and(queryConstraints) | Membuat QueryCompositeFilterConstraint baru yang merupakan gabungan dari batasan filter yang diberikan. Filter gabungan mencakup dokumen jika memenuhi semua filter yang diberikan. |
or(queryConstraints) | Membuat QueryCompositeFilterConstraint baru yang merupakan disjungsi dari batasan filter yang ditentukan. Filter disjungsi menyertakan dokumen jika memenuhi salah satu filter yang diberikan. |
fungsi(referensi, ...) | |
addDoc(referensi, data) | Menambahkan dokumen baru ke CollectionReference yang ditentukan dengan data yang diberikan, sehingga menetapkan ID dokumen secara otomatis. |
collection(referensi, jalur, pathSegments) | Mendapatkan instance CollectionReference yang merujuk ke subkoleksi reference di jalur relatif yang ditentukan. |
collection(referensi, jalur, pathSegments) | 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, pathSegments) | 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 ditampilkan. |
doc(referensi, jalur, pathSegments) | Mendapatkan instance DocumentReference yang merujuk ke dokumen dalam reference di jalur relatif yang ditentukan. |
getDoc(referensi) | Membaca dokumen yang dirujuk oleh DocumentReference ini.Catatan: getDoc() berupaya memberikan data terbaru jika memungkinkan dengan menunggu data dari server, tetapi mungkin menampilkan data yang disimpan dalam cache atau gagal jika Anda sedang offline dan server tidak dapat dijangkau. Untuk menentukan perilaku ini, panggil getDocFromCache() atau getDocFromServer(). |
getDocFromCache(referensi) | Membaca dokumen yang dirujuk oleh DocumentReference ini dari cache. Menampilkan error jika dokumen saat ini tidak di-cache. |
getDocFromServer(referensi) | Membaca dokumen yang dirujuk oleh DocumentReference ini dari server. Menampilkan error jika jaringan tidak tersedia. |
onSnapshot(referensi, pengamat) | Melampirkan pemroses untuk peristiwa DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error .CATATAN: Meskipun dapat diberikan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
onSnapshot(referensi, opsi, pengamat) | Melampirkan pemroses untuk peristiwa DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error .CATATAN: Meskipun dapat diberikan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
onSnapshot(reference, onNext, onError, onCompletion) | Melampirkan pemroses untuk peristiwa DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error .CATATAN: Meskipun dapat diberikan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
onSnapshot(referensi, opsi, onNext, onError, onCompletion) | Melampirkan pemroses untuk peristiwa DocumentSnapshot . Anda dapat meneruskan callback onNext dan onError individual atau meneruskan satu objek observer dengan callback next dan error .CATATAN: Meskipun dapat diberikan, callback onCompletion tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir. |
setDoc(referensi, data) | Menulis ke dokumen yang dirujuk oleh DocumentReference ini. Jika belum ada, dokumen akan dibuat. |
setDoc(referensi, data, opsi) | Menulis ke dokumen yang dirujuk oleh DocumentReference yang ditentukan. Jika belum ada, dokumen akan dibuat. Jika Anda memberikan merge atau mergeFields , data yang diberikan dapat digabungkan ke dalam dokumen yang sudah ada. |
updateDoc(referensi, data) | Memperbarui kolom dalam dokumen yang dirujuk oleh DocumentReference yang ditentukan. Pembaruan akan gagal jika diterapkan ke dokumen yang tidak ada. |
updateDoc(referensi, kolom, nilai, moreFieldsAndValues) | Memperbarui kolom dalam dokumen yang dirujuk oleh DocumentReference yang ditentukan Pembaruan akan gagal jika diterapkan ke dokumen yang tidak ada.Kolom bertingkat dapat diperbarui dengan memberikan string jalur kolom yang dipisahkan titik atau dengan memberikan objek FieldPath . |
fungsi(setelan, ...) | |
memoryLocalCache(setelan) | Membuat instance MemoryLocalCache . Instance dapat disetel ke FirestoreSettings.cache untuk memberi tahu SDK lapisan cache mana yang akan digunakan. |
memoryLruGarbageCollector(setelan) | Membuat instance MemoryLruGarbageCollector .Ukuran target dapat ditentukan sebagai bagian dari parameter setelan. Pengumpul akan mulai menghapus dokumen setelah ukuran cache melebihi ukuran yang diberikan. Ukuran cache default adalah 40 MB (40 * 1024 * 1024 byte). |
persistentLocalCache(setelan) | Membuat instance PersistentLocalCache . Instance dapat disetel ke FirestoreSettings.cache untuk memberi tahu SDK lapisan cache mana yang akan digunakan.Cache persisten tidak dapat digunakan di lingkungan Node.js. |
persistentSingleTabManager(setelan) | Membuat instance PersistentSingleTabManager . |
fungsi(snapshot, ...) | |
endAt(snapshot) | Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir pada dokumen yang disediakan (inklusif). Posisi akhir relatif terhadap urutan kueri. Dokumen harus berisi semua kolom yang diberikan di orderBy kueri. |
endBefore(snapshot) | Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir sebelum dokumen yang diberikan (eksklusif). Posisi akhir relatif terhadap urutan kueri. Dokumen harus berisi semua kolom yang diberikan di orderBy kueri. |
startAfter(snapshot) | Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai setelah dokumen yang diberikan (eksklusif). Posisi awal relatif terhadap urutan kueri. Dokumen harus berisi semua kolom yang diberikan di orderBy kueri. |
startAt(snapshot) | Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai pada dokumen yang disediakan (inklusif). Posisi awal relatif terhadap urutan kueri. Dokumen ini harus berisi semua kolom yang diberikan dalam orderBy kueri ini. |
fungsi(nilai, ...) | |
vektor(nilai) | Membuat VectorValue baru yang dibuat dengan salinan array angka yang diberikan. |
Kelas
Class | Deskripsi |
---|---|
AggregateField | Mewakili agregasi yang dapat dilakukan oleh Firestore. |
AggregateQuerySnapshot | Hasil menjalankan kueri agregasi. |
Byte | Objek yang tidak dapat diubah yang mewakili array byte. |
CollectionReference | Objek CollectionReference dapat digunakan untuk menambahkan dokumen, mendapatkan referensi dokumen, dan membuat kueri untuk dokumen (menggunakan query()). |
DocumentReference | DocumentReference mengacu ke lokasi dokumen dalam database Firestore dan dapat digunakan untuk menulis, membaca, atau memproses lokasi. Dokumen di lokasi yang dirujuk mungkin ada atau tidak. |
DocumentSnapshot | DocumentSnapshot berisi data yang dibaca dari dokumen dalam database Firestore Anda. Data dapat diekstrak dengan .data() atau .get(<field>) untuk mendapatkan kolom tertentu.Untuk DocumentSnapshot yang mengarah ke dokumen yang tidak ada, semua akses data akan menampilkan 'undefined'. Anda dapat menggunakan metode exists() untuk memverifikasi keberadaan dokumen secara eksplisit. |
FieldPath | FieldPath mengacu pada kolom dalam dokumen. Jalur ini dapat terdiri dari satu nama kolom (merujuk ke kolom level teratas dalam dokumen), atau daftar nama kolom (merujuk pada kolom bertingkat dalam dokumen).Buat FieldPath dengan memberikan nama kolom. Jika nama kolom diberikan lebih dari satu, jalur akan mengarah ke kolom bertingkat dalam dokumen. |
NilaiKolom | Nilai sentinel yang dapat digunakan saat menulis kolom dokumen dengan set() atau update() . |
Firestore | Antarmuka layanan Cloud Firestore.Jangan panggil konstruktor ini secara langsung. Sebagai gantinya, gunakan getFirestore(). |
ErrorFirestore | Error yang ditampilkan oleh operasi Firestore. |
GeoPoint | Objek tetap yang mewakili lokasi geografis di Firestore. Lokasi direpresentasikan sebagai pasangan garis lintang/bujur.Nilai lintang berada dalam rentang [-90, 90]. Nilai bujur berada dalam rentang [-180, 180]. |
LoadBundleTask | Menampilkan tugas pemuatan paket Firestore. API ini menyediakan progres pemuatan paket, serta penyelesaian tugas dan peristiwa error.API ini kompatibel dengan Promise<LoadBundleTaskProgress> . |
PersistentCacheIndexManager | PersistentCacheIndexManager untuk mengonfigurasi indeks cache persisten yang digunakan untuk eksekusi kueri lokal.Agar dapat menggunakannya, panggil getPersistentCacheIndexManager() untuk mendapatkan instance. |
Kueri | Query mengacu pada kueri yang dapat Anda baca atau dengarkan. Anda juga dapat membuat objek Query yang disempurnakan dengan menambahkan filter dan pengurutan. |
QueryCompositeFilterConstraint | QueryCompositeFilterConstraint digunakan untuk mempersempit kumpulan dokumen yang ditampilkan oleh kueri Firestore dengan menjalankan logika OR atau AND dari beberapa QueryFieldFilterConstraints atau QueryCompositeFilterConstraint. QueryCompositeFilterConstraint dibuat dengan memanggil or() atau and() lalu dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryCompositeFilterConstraint . |
QueryConstraint | QueryConstraint digunakan untuk mempersempit kumpulan dokumen yang ditampilkan oleh kueri Firestore. QueryConstraint dibuat dengan memanggil where(), orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit(), limitToLast(), serta dapat diteruskan ke kueri instance baru ini.QueryConstraint |
QueryDocumentSnapshot | QueryDocumentSnapshot berisi data yang dibaca dari dokumen dalam database Firestore Anda sebagai bagian dari kueri. Dokumen dijamin ada dan datanya dapat diekstrak dengan .data() atau .get(<field>) untuk mendapatkan kolom tertentu.QueryDocumentSnapshot menawarkan platform API yang sama seperti DocumentSnapshot . Karena hasil kueri hanya berisi dokumen yang sudah ada, properti exists akan selalu benar dan data() tidak akan pernah menampilkan 'undefined'. |
QueryEndAtConstraint | QueryEndAtConstraint digunakan untuk mengecualikan dokumen dari akhir kumpulan hasil yang ditampilkan oleh kueri Firestore. QueryEndAtConstraint dibuat dengan memanggil endAt() atau endBefore() dan kemudian dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryEndAtConstraint ini. |
QueryFieldFilterConstraint | QueryFieldFilterConstraint digunakan untuk mempersempit kumpulan dokumen yang ditampilkan oleh kueri Firestore dengan memfilter satu atau beberapa kolom dokumen. QueryFieldFilterConstraint dibuat dengan memanggil where() lalu dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryFieldFilterConstraint ini. |
QueryLimitConstraint | QueryLimitConstraint digunakan untuk membatasi jumlah dokumen yang ditampilkan oleh kueri Firestore. QueryLimitConstraint dibuat dengan memanggil limit() atau limitToLast(), lalu dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryLimitConstraint ini. |
QueryOrderByConstraint | QueryOrderByConstraint digunakan untuk mengurutkan kumpulan dokumen yang ditampilkan oleh kueri Firestore. QueryOrderByConstraint dibuat dengan memanggil orderBy() lalu dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryOrderByConstraint ini.Catatan: Dokumen yang tidak berisi kolom orderBy tidak akan ada dalam hasil kueri. |
QuerySnapshot | QuerySnapshot berisi nol objek DocumentSnapshot atau lebih yang mewakili hasil kueri. Dokumen dapat diakses sebagai array melalui properti docs atau dienumerasi menggunakan metode forEach . Jumlah dokumen dapat ditentukan melalui properti empty dan size . |
QueryStartAtConstraint | QueryStartAtConstraint digunakan untuk mengecualikan dokumen dari awal set hasil yang ditampilkan oleh kueri Firestore. QueryStartAtConstraint dibuat dengan memanggil startAt() atau startAfter() lalu dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryStartAtConstraint ini. |
SnapshotMetadata | Metadata tentang snapshot, yang mendeskripsikan status snapshot. |
Stempel waktu | Timestamp mewakili titik waktu yang tidak bergantung pada zona waktu atau kalender mana pun, yang direpresentasikan sebagai detik dan sepersekian detik pada resolusi nanodetik dalam waktu Epoch UTC.Ini dienkode menggunakan Kalender Gregorian Proleptik yang memperluas kalender Gregorian mundur ke tahun pertama. Ini dienkode dengan asumsi semua menit berdurasi 60 detik, yaitu detik kabisat "dioleskan" sehingga tabel lompatan kedua tidak
diperlukan untuk penafsiran. Rentangnya adalah dari 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59.999999999Z.Untuk contoh dan spesifikasi lebih lanjut, lihat Definisi stempel waktu. |
Transaksi | Referensi ke transaksi.Objek Transaction yang diteruskan ke updateFunction transaksi menyediakan metode untuk membaca dan menulis data dalam konteks transaksi. Lihat runTransaction(). |
VectorValue | Merepresentasikan jenis vektor dalam dokumen Firestore. Buat instance dengan . NilaiVektor |
WriteBatch | Batch operasi tulis, yang digunakan untuk melakukan beberapa penulisan sebagai satu unit atom.Objek WriteBatch dapat diperoleh dengan memanggil writeBatch(). Ini menyediakan metode untuk menambahkan penulisan ke batch operasi tulis. Tidak ada operasi tulis yang akan di-commit (atau terlihat secara lokal) hingga WriteBatch.commit() dipanggil. |
Antarmuka
Antarmuka | Deskripsi |
---|---|
AggregateSpec | Menentukan kumpulan agregasi dan aliasnya. |
Perubahan Dokumen | DocumentChange menunjukkan perubahan pada dokumen yang cocok dengan kueri. Pesan ini berisi dokumen yang terpengaruh dan jenis perubahan yang terjadi. |
DocumentData | Data dokumen (untuk digunakan dengan setDoc()) terdiri dari kolom yang dipetakan ke nilai. |
EksperimentalLongPollingOptions | Opsi yang mengonfigurasi transportasi jaringan dasar SDK (WebChannel) saat polling panjang digunakan.Catatan: Antarmuka ini bersifat "eksperimental" dan dapat berubah.Lihat FirestoreSettings.experimentalAutoDetectLongPolling , FirestoreSettings.experimentalForceLongPolling , dan FirestoreSettings.experimentalLongPollingOptions . |
FirestoreDataConverter | Konverter yang digunakan oleh withConverter() untuk mengubah objek pengguna jenis AppModelType menjadi data Firestore jenis DbModelType .Menggunakan konverter memungkinkan Anda menentukan argumen jenis generik saat menyimpan dan mengambil objek dari Firestore.Dalam konteks ini, "AppModel" adalah class yang digunakan dalam aplikasi untuk memaketkan informasi dan fungsi terkait. Class tersebut dapat, misalnya, memiliki properti dengan jenis data bertingkat yang kompleks, properti yang digunakan untuk memoisasi, properti jenis yang tidak didukung oleh Firestore (seperti symbol dan bigint ), dan fungsi bantuan yang melakukan operasi gabungan. Class tersebut tidak cocok dan/atau memungkinkan untuk disimpan ke dalam database Firestore. Sebagai gantinya, instance class tersebut harus dikonversi menjadi "objek JavaScript lama biasa" (POJO) dengan properti primitif eksklusif, dan berpotensi bersarang di dalam POJO lain atau array POJO. Dalam konteks ini, jenis ini disebut sebagai "DbModel" dan akan menjadi objek yang cocok untuk dipertahankan di Firestore. Untuk memudahkan, aplikasi dapat mengimplementasikan FirestoreDataConverter dan mendaftarkan pengonversi dengan objek Firestore, seperti DocumentReference atau Query , untuk mengonversi AppModel menjadi DbModel secara otomatis saat menyimpan ke Firestore, dan mengonversi DbModel menjadi AppModel saat mengambil dari Firestore. |
Setelan Firestore | Menentukan konfigurasi kustom untuk instance Cloud Firestore Anda. Anda harus menetapkannya sebelum memanggil metode lain. |
Indeks | (BETA) Definisi SDK dari indeks Firestore. |
Konfigurasi Indeks | (BETA) Daftar indeks Firestore untuk mempercepat eksekusi kueri lokal.Lihat Format JSON untuk mengetahui deskripsi format definisi indeks. |
IndexField | (BETA) Elemen kolom tunggal dalam konfigurasi indeks. |
LoadBundleTaskProgress | Merepresentasikan update progres atau status akhir dari pemuatan paket. |
MemoryCacheSettings | Objek setelan untuk mengonfigurasi instance MemoryLocalCache . |
MemoryEagerGarbageCollector | Pembersih sampah memori menghapus dokumen setiap kali dokumen tersebut bukan bagian dari kueri aktif, dan tidak memiliki mutasi lokal yang terlampir.Kolektor ini mencoba memastikan jejak memori terendah dari SDK, dengan risiko dokumen tidak di-cache untuk kueri offline atau untuk kueri langsung ke cache.Gunakan fungsi factory untuk membuat instance kolektor ini. |
MemoryLocalCache | Menyediakan cache dalam memori ke SDK. Ini adalah cache default, kecuali jika secara eksplisit dikonfigurasi sebaliknya.Untuk menggunakan, buat instance menggunakan fungsi factory, lalu setel instance ke FirestoreSettings.cache dan panggil initializeFirestore menggunakan objek setelan. |
MemoryLruGarbageCollector | Pembersih sampah memori menghapus dokumen yang Least-New-Used dalam beberapa batch.Kolektor ini dikonfigurasi dengan ukuran target, dan hanya akan melakukan pengumpulan jika dokumen yang di-cache melebihi ukuran target. Dengan menghindari kueri backend yang diulang untuk kueri atau dokumen yang sama, Anda berisiko memiliki jejak memori yang lebih besar.Gunakan fungsi factory untuk membuat instance kolektor ini. |
Setelan Persistensi | Setelan yang dapat diteruskan ke enableIndexedDbPersistence() untuk mengonfigurasi persistensi Firestore.Persistensi tidak dapat digunakan di lingkungan Node.js. |
PersistentCacheSettings | Objek setelan untuk mengonfigurasi instance PersistentLocalCache .Cache persisten tidak dapat digunakan di lingkungan Node.js. |
PersistentLocalCache | Menyediakan cache persisten yang didukung oleh IndexedDb ke SDK.Untuk menggunakan, buat instance menggunakan fungsi factory , lalu setel instance tersebut ke FirestoreSettings.cache dan panggil initializeFirestore menggunakan objek setelan. |
PersistentMultipleTabManager | Pengelola tab yang mendukung beberapa tab. SDK akan menyinkronkan kueri dan mutasi yang dilakukan di semua tab menggunakan SDK. |
PersistentSingleTabManager | Pengelola tab yang hanya mendukung satu tab, tidak akan ada sinkronisasi yang 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 akan disertakan dalam kumpulan hasil. |
SnapshotOptions | Opsi yang mengonfigurasi cara data diambil dari DocumentSnapshot (misalnya, perilaku yang diinginkan untuk stempel waktu server yang belum ditetapkan ke nilai akhirnya). |
TransactionOptions | Opsi untuk menyesuaikan perilaku transaksi. |
Berhenti berlangganan | Fungsi yang ditampilkan oleh onSnapshot() yang menghapus pemroses saat dipanggil. |
Variabel
Variabel | Deskripsi |
---|---|
CACHE_SIZE_UNLIMITED | Konstanta yang digunakan untuk menunjukkan pembersihan sampah memori LRU harus dinonaktifkan. Tetapkan nilai ini sebagai cacheSizeBytes pada setelan yang diteruskan ke instance Firestore. |
Ketik Alias
Ketik Alias | Deskripsi |
---|---|
AddPrefixToKeys | Menampilkan peta baru dengan setiap kunci diawali dengan kunci luar yang ditambahkan ke titik. |
AggregateFieldType | Gabungan semua jenis AggregateField yang didukung oleh Firestore. |
AggregateSpecData | Jenis yang kuncinya diambil dari AggregateSpec , dan yang nilainya merupakan hasil agregasi yang dilakukan oleh AggregateField yang sesuai dari AggregateSpec input. |
AggregateType | Jenis gabungan yang mewakili jenis gabungan yang akan dilakukan. |
ChildUpdateFields | Bantuan untuk menghitung kolom bertingkat untuk jenis T1 yang diberikan. Hal ini diperlukan untuk mendistribusikan jenis union seperti undefined | {...} (terjadi untuk properti opsional) atau {a: A} | {b: B} .Dalam kasus penggunaan ini, V digunakan untuk mendistribusikan jenis union gabungan T[K] di 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 berupa 'ditambahkan', 'dihapus', atau 'dimodifikasi'. |
FirestoreErrorCode | Kumpulan kode status Firestore. Kode tersebut sama dengan kode yang ditampilkan oleh gRPC di sini: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdNilai yang mungkin: - 'cancelled': Operasi dibatalkan (biasanya oleh pemanggil). - 'tidak diketahui': Error tidak diketahui atau error dari domain error yang berbeda. - 'invalid-argument': Klien menentukan argumen yang tidak valid. Perhatikan bahwa ini berbeda dengan 'failed-precondition'. 'argumen-tidak valid' menunjukkan argumen yang bermasalah, apa pun status sistemnya (mis. nama kolom yang tidak valid). - 'batas waktu terlampaui': Batas waktu berakhir sebelum operasi selesai. Untuk operasi yang mengubah keadaan sistem, error ini mungkin ditampilkan, bahkan jika, operasi tersebut telah selesai. Sebagai contoh, respons berhasil dari suatu server dapat tertunda selama waktu yang cukup lama hingga tenggat waktu berakhir. - 'not-found': Beberapa dokumen yang diminta tidak ditemukan. - 'sudah ada': Beberapa dokumen yang kami coba buat sudah ada. - 'permission-denied': Pemanggil tidak memiliki izin untuk menjalankan operasi yang ditentukan. - 'resource habis': Beberapa resource telah habis, mungkin kuota per pengguna, atau mungkin kapasitas seluruh sistem file sudah habis. - 'failed-precondition': Operasi ditolak karena sistem tidak dalam status yang diperlukan untuk eksekusi operasi. - 'dibatalkan': Operasi dibatalkan, biasanya karena masalah konkurensi seperti pembatalan transaksi, dll. - 'out-of-range': Operasi dicoba melewati rentang yang valid. - 'unimplementation': Operasi tidak diterapkan atau tidak didukung/diaktifkan. - 'internal': Error internal. Artinya, beberapa invarian yang diharapkan oleh sistem yang mendasarinya telah rusak. Jika Anda melihat error ini, artinya ada sesuatu yang sangat rusak. - 'unavailable': Layanan saat ini tidak tersedia. Kemungkinan besar ini adalah kondisi sementara dan dapat diperbaiki dengan mencoba kembali dengan backoff. - 'kehilangan data': Data hilang atau rusak yang tidak dapat dipulihkan. - 'unauthenticated': Permintaan tidak memiliki kredensial autentikasi yang valid untuk operasi. |
FirestoreLocalCache | Jenis gabungan dari semua lapisan cache SDK yang didukung. |
ListenSource | Jelaskan sumber yang didengarkan kueri.Tetapkan ke default untuk memproses perubahan cache dan server. Setel ke cache untuk memproses perubahan dalam cache saja. |
MemoryGarbageCollector | Jenis gabungan dari semua mendukung pembersih sampah memori untuk cache lokal memori. |
NestedUpdateFields | Untuk setiap kolom (misalnya 'bar'), temukan semua kunci bertingkat (misalnya, {'bar.baz': T1, 'bar.qux': T2}). Gabungkan semuanya untuk membuat satu peta yang berisi semua kemungkinan kunci yang semuanya ditandai sebagai opsional |
OrderByDirection | Arah klausa orderBy() ditentukan sebagai 'desc' atau 'menaik' (menurun atau menaik). |
PartialWithFieldValue | Serupa dengan Partial<T> TypeScript, tetapi memungkinkan kolom bertingkat dihilangkan dan FieldValues diteruskan sebagai nilai properti. |
PersistentTabManager | Gabungan dari semua pengelola tab yang tersedia. |
Primitif | Jenis primitif. |
QueryConstraintType | Menjelaskan berbagai batasan kueri yang tersedia di SDK ini. |
QueryFilterConstraint | QueryFilterConstraint adalah jenis gabungan bantuan yang mewakili QueryFieldFilterConstraint dan QueryCompositeFilterConstraint. |
QueryNonFilterConstraint | QueryNonFilterConstraint adalah jenis union bantuan yang mewakili QueryConstraints yang digunakan untuk mempersempit atau mengurutkan kumpulan dokumen, tetapi tidak memfilter kolom dokumen secara eksplisit. QueryNonFilterConstraint dibuat dengan memanggil orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() atau limitToLast(), serta dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryConstraint . |
SetOptions | Objek opsi yang mengonfigurasi perilaku setDoc(), dan panggilan. Panggilan ini dapat dikonfigurasi untuk melakukan penggabungan terperinci, bukan menimpa dokumen target secara keseluruhan dengan memberikan SetOptions dengan merge: true . |
TaskState | Merepresentasikan status tugas pemuatan paket.Kedua 'Error' dan 'Success' are sinking state: tugas akan dibatalkan atau selesai dan tidak akan ada lagi update setelah dilaporkan. |
UnionToIntersection | Dengan mempertimbangkan jenis gabungan U = T1 | T2 | ... , menampilkan jenis (T1 & T2 & ...) yang berpotongan.Menggunakan jenis kondisional distributif dan inferensi dari jenis kondisional. Ini berfungsi karena beberapa kandidat untuk variabel jenis yang sama dalam posisi kontra-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-to-intersection-type |
UpdateData | Memperbarui data (untuk digunakan dengan updateDoc()) yang berisi jalur kolom (mis. 'foo' atau 'foo.baz') yang dipetakan ke nilai. Kolom yang berisi titik merujuk ke kolom bertingkat dalam dokumen. FieldValues dapat diteruskan sebagai nilai properti. |
Tempat FilterOp | Kondisi filter dalam klausa where() ditetapkan menggunakan string '<', '<=', '==', '!=', '>=', '>', 'array-contains', 'in', 'array-contains-any', dan 'not-in'. |
WithFieldValue | Memungkinkan FieldValues diteruskan sebagai nilai properti dengan tetap mempertahankan keamanan jenis. |
function(aplikasi, ...)
getFirestore(aplikasi)
Menampilkan instance Firestore default yang ada, yang dikaitkan dengan FirebaseApp yang disediakan. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default.
Tanda Tangan:
export declare function getFirestore(app: FirebaseApp): Firestore;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
aplikasi | AplikasiFirebase | Instance FirebaseApp yang terkait dengan instance Firestore yang ditampilkan. |
Hasil:
Instance Firestore default dari aplikasi yang disediakan.
getFirestore(aplikasi, databaseId)
API ini disediakan sebagai pratinjau untuk developer dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini dalam lingkungan produksi.
Menampilkan instance Firestore bernama yang ada dan terkait dengan FirebaseApp yang disediakan. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default.
Tanda Tangan:
export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
aplikasi | AplikasiFirebase | Instance FirebaseApp yang terkait dengan instance Firestore yang ditampilkan. |
IDdatabase | string | Nama database. |
Hasil:
Instance Firestore bernama dari aplikasi yang disediakan.
inisialisasiFirestore(aplikasi, setelan, databaseId)
Melakukan inisialisasi instance Firestore baru dengan setelan yang diberikan. Hanya dapat dipanggil sebelum fungsi lain, termasuk getFirestore(). Jika setelan kustom kosong, fungsi ini sama dengan memanggil getFirestore().
Tanda Tangan:
export declare function initializeFirestore(app: FirebaseApp, settings: FirestoreSettings, databaseId?: string): Firestore;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
aplikasi | AplikasiFirebase | FirebaseApp yang akan dikaitkan dengan instance Firestore. |
setelan | Setelan Firestore | Objek setelan untuk mengonfigurasi instance Firestore. |
IDdatabase | string | Nama database. |
Hasil:
Instance Firestore yang baru diinisialisasi.
function(firestore, ...)
clearIndexedDbPersistence(firestore)
Menghapus penyimpanan persisten. Hal ini termasuk operasi tulis yang tertunda dan dokumen yang di-cache.
Harus dipanggil saat instance Firestore tidak dimulai (setelah aplikasi dihentikan atau saat aplikasi pertama kali diinisialisasi). Saat memulai, fungsi ini harus dipanggil sebelum fungsi lain (selain InitializeFirestore() atau getFirestore())). Jika instance Firestore masih berjalan, promise akan ditolak dengan kode error failed-precondition
.
Tanda Tangan:
export declare function clearIndexedDbPersistence(firestore: Firestore): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore untuk menghapus persistensinya. |
Hasil:
Janji<void>
Promise
yang di-resolve saat penyimpanan persisten dihapus. Jika tidak, promise akan ditolak dengan error.
collection(firestore, path, pathSegments)
Mendapatkan instance CollectionReference
yang merujuk 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 | Deskripsi |
---|---|---|
firestore | Firestore | Referensi ke instance Firestore root. |
jalur | string | Jalur yang dipisahkan garis miring ke koleksi. |
pathSegments | {i>string<i}[] | Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama. |
Hasil:
CollectionReference<DocumentData, DocumentData>
Instance CollectionReference
.
Pengecualian
Apakah jalur akhir memiliki jumlah segmen genap dan tidak mengarah ke kumpulan.
collectionGroup(firestore, collectionId)
Membuat dan menampilkan instance Query
baru yang menyertakan semua dokumen dalam database yang berada dalam koleksi atau subkoleksi dengan collectionId
yang ditentukan.
Tanda Tangan:
export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Referensi ke instance Firestore root. |
ID koleksi | string | Mengidentifikasi koleksi yang akan dikueri. Setiap koleksi atau subkoleksi dengan ID ini sebagai segmen terakhir dari jalurnya akan disertakan. Tidak boleh berisi garis miring. |
Hasil:
Kueri<DocumentData, DocumentData>
Query
yang dibuat.
connectFirestoreEmulator(firestore, host, port, opsi)
Ubah instance 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 | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore yang akan dikonfigurasi untuk terhubung ke emulator. |
host | string | host emulator (mis.: localhost). |
port | angka | port emulator (mis.: 9000). |
opsi | { mockUserToken?: EmulatorMockTokenOptions | {i>string<i}; } |
Hasil:
void
nonaktifkanNetwork(firestore)
Menonaktifkan penggunaan jaringan untuk instance ini. Konfigurasi ini dapat diaktifkan kembali melalui enableNetwork(). Saat jaringan dinonaktifkan, setiap pemroses snapshot, panggilan getDoc()
atau getDocs()
akan menampilkan hasil dari cache, dan setiap operasi tulis akan dimasukkan ke dalam antrean sampai jaringan dipulihkan.
Tanda Tangan:
export declare function disableNetwork(firestore: Firestore): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore |
Hasil:
Janji<void>
Promise
yang diselesaikan setelah jaringan dinonaktifkan.
doc(firestore, path, pathSegments)
Mendapatkan instance DocumentReference
yang merujuk ke dokumen di jalur absolut yang ditentukan.
Tanda Tangan:
export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Referensi ke instance Firestore root. |
jalur | string | Jalur yang dipisahkan garis miring ke dokumen. |
pathSegments | {i>string<i}[] | Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama. |
Hasil:
DocumentReference<DocumentData, DocumentData>
Instance DocumentReference
.
Pengecualian
Jika jalur akhir memiliki jumlah segmen ganjil dan tidak mengarah ke dokumen.
enableIndexedDbPersistence(firestore, persistenSettings)
Fungsi ini akan dihapus dalam rilis utama mendatang. Sebagai gantinya, setel
FirestoreSettings.localCache
ke instancePersistentLocalCache
untuk mengaktifkan cache IndexedDb. Memanggil fungsi ini saatFirestoreSettings.localCache
sudah ditentukan akan menampilkan pengecualian.
Berupaya mengaktifkan penyimpanan persisten, jika memungkinkan.
Jika gagal, enableIndexedDbPersistence()
akan menolak promise atau menampilkan pengecualian. Ada beberapa alasan mengapa hal ini bisa gagal, yang dapat diidentifikasi oleh code
pada error.
* failed-precondition: Aplikasi sudah terbuka di tab browser lain. * tidak diterapkan: Browser tidak kompatibel dengan implementasi persistensi offline.
Perlu diperhatikan bahwa meskipun terjadi kegagalan, instance Firestore akan tetap dapat digunakan, tetapi persistensi offline akan dinonaktifkan.
Persistensi tidak dapat digunakan di lingkungan Node.js.
Tanda Tangan:
export declare function enableIndexedDbPersistence(firestore: Firestore, persistenceSettings?: PersistenceSettings): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore untuk mengaktifkan persistensi. |
Setelanpersistensi | Setelan Persistensi | Objek setelan opsional untuk mengonfigurasi persistensi. |
Hasil:
Janji<void>
Promise
yang menunjukkan keberhasilan pengaktifan penyimpanan persisten.
enableMultiTabIndexedDbPersistence(firestore)
Fungsi ini akan dihapus dalam rilis utama mendatang. Sebagai gantinya, setel
FirestoreSettings.localCache
ke instancePersistentLocalCache
untuk mengaktifkan cache indexeddb. Memanggil fungsi ini saatFirestoreSettings.localCache
sudah ditentukan akan menampilkan pengecualian.
Berupaya mengaktifkan penyimpanan persisten multi-tab, jika memungkinkan. Jika diaktifkan di semua tab, semua operasi akan berbagi akses ke persistensi lokal, termasuk eksekusi kueri bersama dan pembaruan dokumen lokal berkompensasi latensi di semua instance yang terhubung.
Jika gagal, enableMultiTabIndexedDbPersistence()
akan menolak promise atau menampilkan pengecualian. Ada beberapa alasan mengapa hal ini bisa gagal, yang dapat diidentifikasi oleh code
pada error.
* gagal-prakondisi: Aplikasi sudah terbuka di tab browser lain dan multi-tab tidak diaktifkan. * tidak diterapkan: Browser tidak kompatibel dengan implementasi persistensi offline.
Perlu diperhatikan bahwa meskipun terjadi kegagalan, instance Firestore akan tetap dapat digunakan, tetapi persistensi offline akan dinonaktifkan.
Tanda Tangan:
export declare function enableMultiTabIndexedDbPersistence(firestore: Firestore): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore untuk mengaktifkan persistensi. |
Hasil:
Janji<void>
Promise
yang menunjukkan keberhasilan pengaktifan 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 | Deskripsi |
---|---|---|
firestore | Firestore |
Hasil:
Janji<void>
Promise
yang diselesaikan setelah jaringan diaktifkan.
getPersistentCacheIndexManager(firestore)
Menampilkan Pengelola Indeks PersistentCache yang digunakan oleh objek Firestore
tertentu.
Instance PersistentCacheIndexManager
, atau null
jika penyimpanan persisten lokal tidak digunakan.
Tanda Tangan:
export declare function getPersistentCacheIndexManager(firestore: Firestore): PersistentCacheIndexManager | null;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore |
Hasil:
PersistentCacheIndexManager | null (kosong)
loadBundle(firestore, bundleData)
Memuat paket Firestore ke cache lokal.
Tanda Tangan:
export declare function loadBundle(firestore: Firestore, bundleData: ReadableStream<Uint8Array> | ArrayBuffer | string): LoadBundleTask;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore yang akan dimuat paket. |
bundleData | ReadableStream<Uint8Array> | ArrayBuffer | {i>string<i} | Objek yang mewakili paket yang akan dimuat. Objek yang valid adalah ArrayBuffer , ReadableStream<Uint8Array> , atau string . |
Hasil:
Objek LoadBundleTask
, yang memberi tahu pemanggil dengan pembaruan progres, dan peristiwa penyelesaian atau error. API ini dapat digunakan sebagai Promise<LoadBundleTaskProgress>
.
nameQuery(firestore, nama)
Membaca Kueri Firestore dari cache lokal, yang diidentifikasi berdasarkan nama tertentu.
Kueri bernama dikemas ke dalam paket di sisi server (beserta dokumen yang dihasilkan), dan dimuat ke cache lokal menggunakan loadBundle
. Setelah berada di cache lokal, gunakan metode ini untuk mengekstrak Kueri berdasarkan nama.
Tanda Tangan:
export declare function namedQuery(firestore: Firestore, name: string): Promise<Query | null>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore untuk membaca kueri. |
name | string | Nama kueri. |
Hasil:
Promise<Query | null>
Promise
yang di-resolve dengan Kueri atau null
.
onSnapshotsInSync(firestore, observer)
Melampirkan pemroses untuk peristiwa snapshot-in-sync. Peristiwa snapshot-in-sync menunjukkan bahwa semua pemroses yang terpengaruh oleh perubahan yang diberikan telah diaktifkan, meskipun satu perubahan yang dihasilkan server memengaruhi beberapa pemroses.
CATATAN: Peristiwa snapshot-in-sync hanya menunjukkan bahwa pemroses melakukan sinkronisasi satu sama lain, tetapi tidak terkait dengan apakah snapshot tersebut sinkron dengan server. Gunakan SnapshotMetadata di setiap pemroses 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 | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore untuk menyinkronkan snapshot. |
{i>Observer<i} | { berikutnya?: (nilai: void) => batal; error?: (error: FirestoreError) => batal; selesai?: () => batal; } | Satu objek yang berisi callback next dan error . |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshotsInSync(firestore, onSync)
Melampirkan pemroses untuk peristiwa snapshot-in-sync. Peristiwa snapshot-in-sync menunjukkan bahwa semua pemroses yang terpengaruh oleh perubahan yang diberikan telah diaktifkan, meskipun satu perubahan yang dihasilkan server memengaruhi beberapa pemroses.
CATATAN: Peristiwa snapshot-in-sync hanya menunjukkan bahwa pemroses melakukan sinkronisasi satu sama lain, tetapi tidak terkait dengan apakah snapshot tersebut sinkron dengan server. Gunakan SnapshotMetadata
di setiap pemroses untuk menentukan apakah snapshot berasal dari cache atau server.
Tanda Tangan:
export declare function onSnapshotsInSync(firestore: Firestore, onSync: () => void): Unsubscribe;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore untuk menyinkronkan snapshot. |
onSync | () => kosong | Callback yang akan dipanggil setiap kali semua pemroses snapshot disinkronkan satu sama lain. |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
runTransaction(firestore, updateFunction, opsi)
Mengeksekusi updateFunction
yang diberikan, lalu mencoba melakukan commit untuk perubahan yang diterapkan dalam transaksi. Jika pembacaan dokumen dalam transaksi telah berubah, Cloud Firestore akan mencoba kembali updateFunction
. Jika gagal melakukan commit setelah 5 kali percobaan, 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 | Deskripsi |
---|---|---|
firestore | Firestore | Referensi ke database Firestore untuk menjalankan transaksi ini. |
updateFunction | (transaksi: Transaksi) => Janji<T> | Fungsi yang akan dieksekusi dalam konteks transaksi. |
opsi | TransactionOptions | Objek opsi untuk mengonfigurasi jumlah maksimum upaya commit. |
Hasil:
Janji<T>
Jika transaksi berhasil diselesaikan atau dibatalkan secara eksplisit (updateFunction
menampilkan promise yang gagal), promise yang ditampilkan oleh updateFunction
akan ditampilkan di sini. Sebaliknya, jika transaksi gagal, promise yang ditolak dengan error kegagalan yang terkait akan ditampilkan.
setIndexConfiguration(firestore, konfigurasi)
API ini disediakan sebagai pratinjau untuk developer dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini dalam lingkungan produksi.
Daripada membuat indeks cache secara manual, sebaiknya gunakan
enablePersistentCacheIndexAutoCreation()
untuk mengizinkan SDK memutuskan apakah akan membuat indeks cache untuk kueri yang berjalan secara lokal.
Mengonfigurasi pengindeksan untuk eksekusi kueri lokal. Konfigurasi indeks sebelumnya akan diganti. Promise
akan me-resolve setelah konfigurasi indeks dipertahankan.
Entri indeks itu sendiri dibuat secara asinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan meskipun indeksnya 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.
Tanda Tangan:
export declare function setIndexConfiguration(firestore: Firestore, configuration: IndexConfiguration): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore yang akan dikonfigurasi indeksnya. |
konfigurasi | Konfigurasi Indeks | Definisi indeks. |
Hasil:
Janji<void>
Promise
yang di-resolve setelah semua indeks berhasil dikonfigurasi.
Pengecualian
FirestoreError jika format JSON tidak valid.
setIndexConfiguration(firestore, json)
API ini disediakan sebagai pratinjau untuk developer dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini dalam lingkungan produksi.
Daripada membuat indeks cache secara manual, sebaiknya gunakan
enablePersistentCacheIndexAutoCreation()
untuk mengizinkan SDK memutuskan apakah akan membuat indeks cache untuk kueri yang berjalan secara lokal.
Mengonfigurasi pengindeksan untuk eksekusi kueri lokal. Konfigurasi indeks sebelumnya akan diganti. Promise
akan me-resolve setelah konfigurasi indeks dipertahankan.
Entri indeks itu sendiri dibuat secara asinkron. Anda dapat terus menggunakan kueri yang memerlukan pengindeksan meskipun indeksnya 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 menetapkan 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 menampilkan error.
Tanda Tangan:
export declare function setIndexConfiguration(firestore: Firestore, json: string): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore | Instance Firestore yang akan dikonfigurasi indeksnya. |
json | string | Format JSON yang diekspor oleh Firebase CLI. |
Hasil:
Janji<void>
Promise
yang di-resolve setelah semua indeks berhasil dikonfigurasi.
Pengecualian
FirestoreError jika format JSON tidak valid.
penghentian(firestore)
Menghentikan instance Firestore yang disediakan.
Setelah memanggil terminate()
, hanya fungsi clearIndexedDbPersistence()
yang dapat digunakan. Fungsi lainnya akan menampilkan FirestoreError
.
Untuk memulai ulang setelah penghentian, buat instance FirebaseFirestore baru dengan getFirestore().
Penghentian tidak membatalkan penulisan yang tertunda, dan semua promise yang sedang menunggu respons dari server tidak akan diselesaikan. Jika Anda mengaktifkan persistensi, saat berikutnya Anda memulai instance ini, instance ini akan melanjutkan pengiriman penulisan ini ke server.
Tanda Tangan:
export declare function terminate(firestore: Firestore): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore |
Hasil:
Janji<void>
Promise
yang diselesaikan saat instance berhasil dihentikan.
waitForPendingWrites(firestore)
Menunggu hingga semua penulisan yang saat ini tertunda untuk pengguna aktif telah dikonfirmasi oleh backend.
Promise yang ditampilkan akan segera di-resolve jika tidak ada operasi tulis yang belum terselesaikan. Jika tidak, promise akan menunggu semua penulisan yang dikeluarkan sebelumnya (termasuk yang ditulis dalam sesi aplikasi sebelumnya), tetapi tidak akan menunggu penulisan yang ditambahkan setelah fungsi dipanggil. Jika Anda ingin menunggu operasi tulis tambahan, panggil waitForPendingWrites()
lagi.
Semua promise waitForPendingWrites()
yang belum terselesaikan akan ditolak selama perubahan pengguna.
Tanda Tangan:
export declare function waitForPendingWrites(firestore: Firestore): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore |
Hasil:
Janji<void>
Promise
yang di-resolve saat semua penulisan yang saat ini tertunda telah dikonfirmasi oleh backend.
writeBatch(firestore)
Membuat batch tulis, yang digunakan untuk melakukan beberapa penulisan sebagai satu operasi atomik. Jumlah maksimum operasi tulis yang diizinkan dalam satu WriteBatch adalah 500.
Tidak seperti transaksi, batch operasi tulis dipertahankan secara offline sehingga lebih cocok jika Anda tidak perlu mengondisikan penulisan pada data baca.
Tanda Tangan:
export declare function writeBatch(firestore: Firestore): WriteBatch;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
firestore | Firestore |
Hasil:
WriteBatch yang dapat digunakan untuk mengeksekusi beberapa penulisan secara menyeluruh.
function()
jumlah()
Membuat objek AggregateField yang dapat digunakan untuk menghitung jumlah dokumen dalam kumpulan hasil kueri.
Tanda Tangan:
export declare function count(): AggregateField<number>;
Hasil:
AggregateField<number>
deleteField()
Menampilkan sentinel untuk digunakan dengan updateDoc() atau setDoc() dengan {merge: true}
guna menandai kolom untuk dihapus.
Tanda Tangan:
export declare function deleteField(): FieldValue;
Hasil:
documentId()
Menampilkan sentinel khusus FieldPath
untuk merujuk ke ID dokumen. Fungsi ini dapat digunakan dalam kueri untuk mengurutkan atau memfilter berdasarkan ID dokumen.
Tanda Tangan:
export declare function documentId(): FieldPath;
Hasil:
getFirestore()
Menampilkan instance Firestore default yang ada, yang dikaitkan dengan FirebaseApp default. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default.
Tanda Tangan:
export declare function getFirestore(): Firestore;
Hasil:
Instance Firestore default dari aplikasi default.
memoryEagerGarbageCollector()
Membuat instance MemoryEagerGarbageCollector
. Ini juga merupakan pembersih sampah memori default kecuali jika dinyatakan sebaliknya secara eksplisit.
Tanda Tangan:
export declare function memoryEagerGarbageCollector(): MemoryEagerGarbageCollector;
Hasil:
persistentMultipleTabManager()
Membuat instance PersistentMultipleTabManager
.
Tanda Tangan:
export declare function persistentMultipleTabManager(): PersistentMultipleTabManager;
Hasil:
serverTimestamp()
Menampilkan sentinel yang digunakan dengan setDoc() atau updateDoc() untuk menyertakan stempel waktu yang dibuat server dalam data tertulis.
Tanda Tangan:
export declare function serverTimestamp(): FieldValue;
Hasil:
function(databaseId, ...)
getFirestore(IDdatabase)
API ini disediakan sebagai pratinjau untuk developer dan dapat berubah berdasarkan masukan yang kami terima. Jangan gunakan API ini dalam lingkungan produksi.
Menampilkan instance Firestore bernama yang ada dan dikaitkan dengan FirebaseApp default. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default.
Tanda Tangan:
export declare function getFirestore(databaseId: string): Firestore;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
IDdatabase | string | Nama database. |
Hasil:
Instance Firestore yang bernama dari aplikasi default.
function(elemen, ...)
arrayRemove(elemen)
Menampilkan nilai khusus yang dapat digunakan dengan setDoc() atau yang memberi tahu server untuk menghapus elemen yang diberikan dari nilai array apa pun yang sudah ada di server. Semua instance dari setiap elemen yang ditentukan akan dihapus dari array. Jika kolom yang diubah belum berupa array, kolom tersebut akan ditimpa dengan array kosong.
Tanda Tangan:
export declare function arrayRemove(...elements: unknown[]): FieldValue;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
elemen | tidak diketahui[] | Elemen yang akan dihapus dari array. |
Hasil:
Sentinel FieldValue
untuk digunakan dalam panggilan ke setDoc()
atau updateDoc()
arrayUnion(elemen)
Menampilkan 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 ditetapkan dan belum ada dalam array akan ditambahkan ke bagian akhir. Jika kolom yang dimodifikasi belum berupa array, kolom tersebut akan ditimpa dengan array yang berisi elemen yang ditentukan secara tepat.
Tanda Tangan:
export declare function arrayUnion(...elements: unknown[]): FieldValue;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
elemen | tidak diketahui[] | Elemen yang akan digabungkan ke dalam array. |
Hasil:
Sentinel FieldValue
untuk digunakan dalam panggilan ke setDoc()
atau updateDoc()
.
function(field, ...)
rata-rata(kolom)
Membuat objek AggregateField yang dapat digunakan untuk menghitung rata-rata kolom tertentu pada rentang dokumen di kumpulan hasil kueri.
Tanda Tangan:
export declare function average(field: string | FieldPath): AggregateField<number | null>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
medan | rangkaian | FieldPath | Menentukan kolom yang akan dirata-ratakan di seluruh kumpulan hasil. |
Hasil:
AggregateField<angka | null>
sum(kolom)
Membuat objek AggregateField yang dapat digunakan untuk menghitung jumlah kolom tertentu pada rentang dokumen dalam kumpulan hasil kueri.
Tanda Tangan:
export declare function sum(field: string | FieldPath): AggregateField<number>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
medan | rangkaian | FieldPath | Menentukan kolom yang akan dijumlahkan di seluruh kumpulan hasil. |
Hasil:
AggregateField<number>
function(fieldPath, ...)
orderBy(fieldPath, directionsStr)
Membuat QueryOrderByConstraint yang mengurutkan hasil kueri menurut kolom yang ditentukan, secara opsional dalam urutan menurun, bukan menaik.
Tanda Tangan:
export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
fieldPath | rangkaian | FieldPath | Kolom untuk mengurutkan. |
DirectionsStr | OrderByDirection | Arah opsional untuk mengurutkan ('asc' atau 'desc'). Jika tidak ditentukan, urutannya akan naik. |
Hasil:
QueryOrderByConstraint dibuat.
where(fieldPath, opStr, value)
Membuat QueryFieldFilterConstraint yang menerapkan bahwa dokumen harus berisi kolom yang ditentukan dan bahwa nilai harus memenuhi batasan relasi yang diberikan.
Tanda Tangan:
export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
fieldPath | rangkaian | FieldPath | Jalur yang akan dibandingkan |
OpStr | Tempat FilterOp | String operasi (misalnya "<", "<=", "==", "<", "<=", "!="). |
value | tidak diketahui | Nilai untuk perbandingan |
Hasil:
QueryFieldFilterConstraint dibuat.
function(fieldValues, ...)
endAt(fieldValues)
Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir di kolom yang disediakan, sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri.
Tanda Tangan:
export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
fieldValues | tidak diketahui[] | Nilai kolom untuk mengakhiri kueri ini, sesuai urutan kueri. |
Hasil:
QueryEndAtConstraint untuk diteruskan ke query()
endBefore(fieldValues)
Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir sebelum kolom yang disediakan sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri.
Tanda Tangan:
export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
fieldValues | tidak diketahui[] | Nilai kolom untuk mengakhiri kueri ini sebelumnya, sesuai urutan kueri. |
Hasil:
QueryEndAtConstraint untuk diteruskan ke query()
startAfter(fieldValues)
Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai setelah kolom yang disediakan sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri.
Tanda Tangan:
export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
fieldValues | tidak diketahui[] | Nilai kolom untuk memulai kueri ini setelahnya, sesuai urutan kueri. |
Hasil:
QueryStartAtConstraint untuk diteruskan ke query()
startAt(fieldValues)
Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai pada kolom yang disediakan, sesuai dengan urutan kueri. Urutan nilai kolom harus sesuai dengan urutan kueri berdasarkan klausa kueri.
Tanda Tangan:
export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
fieldValues | tidak diketahui[] | Nilai kolom untuk memulai kueri ini, sesuai urutan kueri. |
Hasil:
QueryStartAtConstraint untuk diteruskan ke query()
.
function(indexManager, ...)
deleteAllPersistentCacheIndexes(indexManager)
Menghapus semua indeks cache yang persisten.
Perhatikan bahwa fungsi ini juga akan menghapus indeks yang dihasilkan oleh setIndexConfiguration()
, yang sudah tidak digunakan lagi.
Tanda Tangan:
export declare function deleteAllPersistentCacheIndexes(indexManager: PersistentCacheIndexManager): void;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
pengelolaindeks | PersistentCacheIndexManager |
Hasil:
void
nonaktifkanPersistentCacheIndexAutoCreation(indexManager)
Menghentikan pembuatan indeks cache persisten secara otomatis untuk eksekusi kueri lokal. Indeks yang telah dibuat dengan memanggil enablePersistentCacheIndexAutoCreation()
masih berlaku.
Tanda Tangan:
export declare function disablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
pengelolaindeks | PersistentCacheIndexManager |
Hasil:
void
enablePersistentCacheIndexAutoCreation(indexManager)
Memungkinkan SDK membuat indeks cache persisten secara otomatis untuk eksekusi kueri lokal jika SDK yakin bahwa indeks cache dapat membantu meningkatkan performa.
Fitur ini dinonaktifkan secara default.
Tanda Tangan:
export declare function enablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
pengelolaindeks | PersistentCacheIndexManager |
Hasil:
void
{i>function<i}(kiri, ...)
agregatFieldEqual(kiri, kanan)
Membandingkan dua instance 'AggregateField` untuk mengetahui kesetaraannya.
Tanda Tangan:
export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
lagi | AggregateField<tidak diketahui> | Bandingkan AggregateField ini dengan right . |
kanan | AggregateField<tidak diketahui> | Bandingkan AggregateField ini dengan left . |
Hasil:
boolean
agregatQuerySnapshotEqual(kiri, kanan)
Membandingkan dua instance AggregateQuerySnapshot
untuk kesetaraan.
Dua instance AggregateQuerySnapshot
dianggap "sama" jika mereka memiliki kueri dasar yang membandingkan data yang sama dan sama.
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 | Deskripsi |
---|---|---|
lagi | AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType> | AggregateQuerySnapshot pertama untuk dibandingkan. |
kanan | AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType> | AggregateQuerySnapshot kedua untuk dibandingkan. |
Hasil:
boolean
true
jika objek "sama", seperti yang didefinisikan di atas, atau false
jika tidak.
queryEqual(kiri, kanan)
Menampilkan true (benar) jika kueri yang diberikan mengarah ke koleksi yang sama dan menerapkan batasan yang sama.
Tanda Tangan:
export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
lagi | Kueri<AppModelType, DbModelType> | Query untuk dibandingkan. |
kanan | Kueri<AppModelType, DbModelType> | Query untuk dibandingkan. |
Hasil:
boolean
benar (true) jika referensi menunjuk ke lokasi yang sama dalam database Firestore yang sama.
refEqual(kiri, kanan)
Menampilkan true (benar) jika referensi yang diberikan sama.
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 | Deskripsi |
---|---|---|
lagi | DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType> | Referensi untuk dibandingkan. |
kanan | DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType> | Referensi untuk dibandingkan. |
Hasil:
boolean
benar (true) jika referensi menunjuk ke lokasi yang sama dalam database Firestore yang sama.
snapshotEqual(kiri, kanan)
Menampilkan true (benar) jika snapshot yang diberikan sama.
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 | Deskripsi |
---|---|---|
lagi | DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType> | Snapshot untuk dibandingkan. |
kanan | DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType> | Snapshot untuk dibandingkan. |
Hasil:
boolean
benar (true) jika beberapa snapshot sama.
function(limit, ...)
limit(batas)
Membuat QueryLimitConstraint yang hanya menampilkan dokumen pertama yang cocok.
Tanda Tangan:
export declare function limit(limit: number): QueryLimitConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
batas | angka | Jumlah maksimum item untuk ditampilkan. |
Hasil:
QueryLimitConstraint dibuat.
limitToLast(batas)
Membuat QueryLimitConstraint yang hanya menampilkan dokumen yang cocok terakhir.
Anda harus menentukan setidaknya satu klausa orderBy
untuk kueri limitToLast
. Jika tidak, pengecualian akan ditampilkan selama eksekusi.
Tanda Tangan:
export declare function limitToLast(limit: number): QueryLimitConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
batas | angka | Jumlah maksimum item untuk ditampilkan. |
Hasil:
QueryLimitConstraint dibuat.
function(logLevel, ...)
setLogLevel(logLevel)
Menetapkan panjang log Cloud Firestore (debug, error, atau silent).
Tanda Tangan:
export declare function setLogLevel(logLevel: LogLevel): void;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
logLevel | LogLevel | Verbositas yang Anda tetapkan untuk pencatatan aktivitas dan error. Dapat berupa salah satu nilai berikut:
|
Hasil:
void
function(n, ...)
penambahan(n)
Menampilkan nilai khusus yang dapat digunakan dengan setDoc() atau updateDoc() yang memberi tahu server untuk menambah nilai kolom saat ini dengan nilai yang diberikan.
Jika operand atau nilai kolom saat ini menggunakan presisi floating point, semua aritmetika akan mengikuti semantik IEEE 754. Jika kedua nilai tersebut adalah bilangan bulat, nilai di luar rentang angka yang aman JavaScript (Number.MIN_SAFE_INTEGER
hingga Number.MAX_SAFE_INTEGER
) juga dapat mengalami kerugian presisi. Selain itu, setelah diproses oleh backend Firestore, semua operasi bilangan bulat akan dibatasi antara -2^63 dan 2^63-1.
Jika nilai kolom saat ini bukan berjenis number
, atau jika kolom belum ada, transformasi akan menetapkan kolom tersebut ke nilai yang diberikan.
Tanda Tangan:
export declare function increment(n: number): FieldValue;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
n | angka | Nilai yang akan bertambah. |
Hasil:
Sentinel FieldValue
untuk digunakan dalam panggilan ke setDoc()
atau updateDoc()
function(query, ...)
getAggregateFromServer(query, aggregateSpec)
Menghitung agregasi yang ditentukan pada dokumen dalam kumpulan hasil kueri yang diberikan tanpa benar-benar mendownload dokumen.
Menggunakan fungsi ini untuk melakukan agregasi adalah tindakan yang efisien karena hanya nilai agregasi akhir, bukan nilai dokumen mengunduh data. Fungsi ini dapat melakukan agregasi dokumen jika kumpulan hasil terlalu besar untuk didownload sepenuhnya (ribuan dokumen).
Hasil yang diterima dari server disajikan, tidak diubah, tanpa mempertimbangkan status lokal apa pun. Artinya, dokumen dalam cache lokal tidak dipertimbangkan dan modifikasi lokal belum disinkronkan dengan server. Hasil yang telah didownload sebelumnya, jika ada, tidak akan digunakan. Setiap pemanggilan fungsi ini harus melibatkan perjalanan bolak-balik ke 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 | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Kueri yang kumpulan hasilnya telah digabungkan. |
AgregatSpec | AggregateSpecType | Objek AggregateSpec yang menentukan gabungan yang akan ditampilkan pada kumpulan hasil. AggregateSpec menentukan alias untuk setiap agregat, yang dapat digunakan untuk mengambil hasil agregat. |
Hasil:
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(kueri)
Menghitung jumlah dokumen dalam set hasil kueri yang diberikan tanpa benar-benar mendownload dokumen.
Menggunakan fungsi ini untuk menghitung dokumen memang efisien karena hanya penghitungan akhir, bukan jumlah dokumen mengunduh data. Fungsi ini dapat menghitung dokumen jika kumpulan hasilnya terlalu besar untuk didownload sepenuhnya (ribuan dokumen).
Hasil yang diterima dari server disajikan, tidak diubah, tanpa mempertimbangkan status lokal apa pun. Artinya, dokumen dalam cache lokal tidak dipertimbangkan dan modifikasi lokal belum disinkronkan dengan server. Hasil yang telah didownload sebelumnya, jika ada, tidak akan digunakan. Setiap pemanggilan fungsi ini harus melibatkan perjalanan bolak-balik ke 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 | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Kueri yang ukuran kumpulan hasilnya dihitung. |
Hasil:
Promise<AggregateQuerySnapshot<{ count: AggregateField<number>; }, AppModelType, DbModelType>>
Promise yang akan diselesaikan dengan hitungan; hitungan ini dapat diambil dari snapshot.data().count
, dengan snapshot
adalah AggregateQuerySnapshot
yang akan di-resolve oleh Promise yang ditampilkan.
getDocs(kueri)
Menjalankan kueri dan menampilkan hasilnya sebagai QuerySnapshot
.
Tanda Tangan:
export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> |
Hasil:
Promise<QuerySnapshot<AppModelType, DbModelType>>
Promise
yang akan diselesaikan dengan hasil kueri.
getDocsFromCache(kueri)
Mengeksekusi kueri dan menampilkan hasilnya sebagai QuerySnapshot
dari cache. Menampilkan set hasil kosong jika tidak ada dokumen yang cocok dengan kueri yang saat ini di-cache.
Tanda Tangan:
export declare function getDocsFromCache<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> |
Hasil:
Promise<QuerySnapshot<AppModelType, DbModelType>>
Promise
yang akan diselesaikan dengan hasil kueri.
getDocsFromServer(kueri)
Menjalankan kueri dan menampilkan hasilnya sebagai QuerySnapshot
dari server. Menampilkan error jika jaringan tidak tersedia.
Tanda Tangan:
export declare function getDocsFromServer<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> |
Hasil:
Promise<QuerySnapshot<AppModelType, DbModelType>>
Promise
yang akan diselesaikan dengan hasil kueri.
onSnapshot(kueri, pengamat)
Melampirkan pemroses untuk peristiwa QuerySnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
. Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot
dipanggil.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Kueri yang akan didengarkan. |
{i>Observer<i} | { berikutnya?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => batal; error?: (error: FirestoreError) => batal; selesai?: () => batal; } | Satu objek yang berisi callback next dan error . |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshot(kueri, opsi, pengamat)
Melampirkan pemroses untuk peristiwa QuerySnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
. Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot
dipanggil.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Kueri yang akan didengarkan. |
opsi | SnapshotListenOptions | Opsi yang mengontrol perilaku pemrosesan. |
{i>Observer<i} | { berikutnya?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => batal; error?: (error: FirestoreError) => batal; selesai?: () => batal; } | Satu objek yang berisi callback next dan error . |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshot(query, onNext, onError, onCompletion)
Melampirkan pemroses untuk peristiwa QuerySnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
. Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot
dipanggil.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Kueri yang akan didengarkan. |
padaBerikutnya | (snapshot: QuerySnapshot<AppModelType, DbModelType>) => kosong | Callback yang akan dipanggil setiap kali QuerySnapshot baru tersedia. |
onError | (error: FirestoreError) => kosong | Callback yang akan dipanggil jika pemrosesan gagal atau dibatalkan. Tidak ada callback lebih lanjut yang akan terjadi. |
saat Penyelesaian | () => kosong | Dapat diberikan, tetapi tidak akan dipanggil karena streaming tidak pernah berakhir. |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshot(kueri, opsi, onNext, onError, onCompletion)
Melampirkan pemroses untuk peristiwa QuerySnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
. Pemroses dapat dibatalkan dengan memanggil fungsi yang ditampilkan saat onSnapshot
dipanggil.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Kueri yang akan didengarkan. |
opsi | SnapshotListenOptions | Opsi yang mengontrol perilaku pemrosesan. |
padaBerikutnya | (snapshot: QuerySnapshot<AppModelType, DbModelType>) => kosong | Callback yang akan dipanggil setiap kali QuerySnapshot baru tersedia. |
onError | (error: FirestoreError) => kosong | Callback yang akan dipanggil jika pemrosesan gagal atau dibatalkan. Tidak ada callback lebih lanjut yang akan terjadi. |
saat Penyelesaian | () => kosong | Dapat diberikan, tetapi tidak akan dipanggil karena streaming tidak pernah berakhir. |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
query(query, composerFilter, queryConstraints)
Membuat instance Query yang tidak dapat diubah dan diperluas untuk menyertakan batasan kueri tambahan juga.
Tanda Tangan:
export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Instance Query yang akan digunakan sebagai dasar untuk batasan baru. |
filterkomposit | QueryCompositeFilterConstraint | QueryCompositeFilterConstraint yang akan diterapkan. Buat QueryCompositeFilterConstraint menggunakan and() atau or(). |
queryConstraints | QueryNonFilterConstraint[] | QueryNonFilterConstraint tambahan yang akan diterapkan (misalnya orderBy(), limit()). |
Hasil:
Kueri<AppModelType, DbModelType>
Pengecualian
jika salah satu batasan kueri yang diberikan tidak dapat digabungkan dengan batasan yang ada atau baru.
query(query, queryConstraints)
Membuat instance Query yang tidak dapat diubah dan diperluas untuk menyertakan batasan kueri tambahan juga.
Tanda Tangan:
export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
kueri | Kueri<AppModelType, DbModelType> | Instance Query yang akan digunakan sebagai dasar untuk batasan baru. |
queryConstraints | QueryConstraint[] | Daftar QueryConstraint yang akan diterapkan. |
Hasil:
Kueri<AppModelType, DbModelType>
Pengecualian
jika salah satu batasan kueri yang diberikan tidak dapat digabungkan dengan batasan yang ada atau baru.
function(queryConstraints, ...)
and(queryConstraints)
Membuat QueryCompositeFilterConstraint baru yang merupakan gabungan dari batasan filter yang diberikan. Filter gabungan mencakup dokumen jika memenuhi semua filter yang diberikan.
Tanda Tangan:
export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
queryConstraints | QueryFilterConstraint[] | Opsional. Daftar QueryFilterConstraint untuk melakukan konjungsi. ID ini harus dibuat dengan panggilan ke where(), or(), atau and(). |
Hasil:
QueryCompositeFilterConstraint
QueryCompositeFilterConstraint yang baru dibuat.
atau(queryConstraints)
Membuat QueryCompositeFilterConstraint baru yang merupakan disjungsi dari batasan filter yang ditentukan. Filter disjungsi menyertakan dokumen jika memenuhi salah satu filter yang diberikan.
Tanda Tangan:
export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
queryConstraints | QueryFilterConstraint[] | Opsional. Daftar QueryFilterConstraint untuk melakukan disjungsi. ID ini harus dibuat dengan panggilan ke where(), or(), atau and(). |
Hasil:
QueryCompositeFilterConstraint
QueryCompositeFilterConstraint yang baru dibuat.
function(reference, ...)
addDoc(referensi, data)
Menambahkan dokumen baru ke CollectionReference
yang ditentukan dengan data yang diberikan, sehingga menetapkan ID dokumen secara otomatis.
Tanda Tangan:
export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | CollectionReference<AppModelType, DbModelType> | Referensi ke koleksi untuk menambahkan dokumen ini. |
data | WithFieldValue<AppModelType> | Objek yang berisi data untuk dokumen baru. |
Hasil:
Promise<DocumentReference<AppModelType, DbModelType>>
Promise
diselesaikan dengan DocumentReference
yang mengarah ke dokumen yang baru dibuat setelah ditulis ke backend (Perhatikan bahwa ini tidak akan di-resolve saat Anda offline).
koleksi(referensi, jalur, pathSegments)
Mendapatkan instance CollectionReference
yang merujuk ke subkoleksi reference
di jalur relatif yang ditentukan.
Tanda Tangan:
export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | CollectionReference<AppModelType, DbModelType> | Referensi ke koleksi. |
jalur | string | Jalur yang dipisahkan garis miring ke koleksi. |
pathSegments | {i>string<i}[] | Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama. |
Hasil:
CollectionReference<DocumentData, DocumentData>
Instance CollectionReference
.
Pengecualian
Apakah jalur akhir memiliki jumlah segmen genap dan tidak mengarah ke kumpulan.
koleksi(referensi, jalur, pathSegments)
Mendapatkan instance CollectionReference
yang merujuk ke subkoleksi reference
di jalur relatif yang ditentukan.
Tanda Tangan:
export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen Firestore. |
jalur | string | Jalur yang dipisahkan garis miring ke koleksi. |
pathSegments | {i>string<i}[] | Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama. |
Hasil:
CollectionReference<DocumentData, DocumentData>
Instance CollectionReference
.
Pengecualian
Apakah jalur akhir memiliki jumlah segmen genap dan tidak mengarah ke kumpulan.
deleteDoc(referensi)
Menghapus dokumen yang dirujuk oleh DocumentReference
yang ditentukan.
Tanda Tangan:
export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan dihapus. |
Hasil:
Janji<void>
Promise di-resolve setelah dokumen berhasil dihapus dari backend (perhatikan bahwa ini tidak akan diselesaikan saat Anda offline).
doc(referensi, jalur, pathSegments)
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 ditampilkan.
Tanda Tangan:
export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | CollectionReference<AppModelType, DbModelType> | Referensi ke koleksi. |
jalur | string | Jalur yang dipisahkan garis miring ke dokumen. Harus dihilangkan untuk menggunakan ID yang dibuat secara otomatis. |
pathSegments | {i>string<i}[] | Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama. |
Hasil:
DocumentReference<AppModelType, DbModelType>
Instance DocumentReference
.
Pengecualian
Jika jalur akhir memiliki jumlah segmen ganjil dan tidak mengarah ke dokumen.
doc(referensi, jalur, pathSegments)
Mendapatkan instance DocumentReference
yang merujuk ke dokumen dalam reference
di jalur relatif yang ditentukan.
Tanda Tangan:
export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen Firestore. |
jalur | string | Jalur yang dipisahkan garis miring ke dokumen. |
pathSegments | {i>string<i}[] | Segmen jalur tambahan yang akan diterapkan relatif terhadap argumen pertama. |
Hasil:
DocumentReference<DocumentData, DocumentData>
Instance DocumentReference
.
Pengecualian
Jika jalur akhir memiliki jumlah segmen ganjil dan tidak mengarah ke dokumen.
getDoc(referensi)
Membaca dokumen yang dirujuk oleh DocumentReference
ini.
Tanda Tangan:
export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi dokumen yang akan diambil. |
Hasil:
Promise<DocumentSnapshot<AppModelType, DbModelType>>
Promise di-resolve dengan DocumentSnapshot
yang berisi konten dokumen saat ini.
getDocFromCache(referensi)
Membaca dokumen yang dirujuk oleh DocumentReference
ini dari cache. Menampilkan error jika dokumen saat ini tidak di-cache.
Tanda Tangan:
export declare function getDocFromCache<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> |
Hasil:
Promise<DocumentSnapshot<AppModelType, DbModelType>>
Promise
di-resolve dengan DocumentSnapshot
yang berisi konten dokumen saat ini.
getDocFromServer(referensi)
Membaca dokumen yang dirujuk oleh DocumentReference
ini dari server. Menampilkan error jika jaringan tidak tersedia.
Tanda Tangan:
export declare function getDocFromServer<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> |
Hasil:
Promise<DocumentSnapshot<AppModelType, DbModelType>>
Promise
di-resolve dengan DocumentSnapshot
yang berisi konten dokumen saat ini.
onSnapshot(referensi, pengamat)
Melampirkan pemroses untuk peristiwa DocumentSnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan diproses. |
{i>Observer<i} | { berikutnya?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => batal; error?: (error: FirestoreError) => batal; selesai?: () => batal; } | Satu objek yang berisi callback next dan error . |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshot(referensi, opsi, pengamat)
Melampirkan pemroses untuk peristiwa DocumentSnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan diproses. |
opsi | SnapshotListenOptions | Opsi yang mengontrol perilaku pemrosesan. |
{i>Observer<i} | { berikutnya?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => batal; error?: (error: FirestoreError) => batal; selesai?: () => batal; } | Satu objek yang berisi callback next dan error . |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshot(reference, onNext, onError, onCompletion)
Melampirkan pemroses untuk peristiwa DocumentSnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan diproses. |
padaBerikutnya | (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => kosong | Callback yang akan dipanggil setiap kali DocumentSnapshot baru tersedia. |
onError | (error: FirestoreError) => kosong | Callback yang akan dipanggil jika pemrosesan gagal atau dibatalkan. Tidak ada callback lebih lanjut yang akan terjadi. |
saat Penyelesaian | () => kosong | Dapat diberikan, tetapi tidak akan dipanggil karena streaming tidak pernah berakhir. |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
onSnapshot(referensi, opsi, onNext, onError, onCompletion)
Melampirkan pemroses untuk peristiwa DocumentSnapshot
. Anda dapat meneruskan callback onNext
dan onError
individual atau meneruskan satu objek observer dengan callback next
dan error
.
CATATAN: Meskipun dapat diberikan, callback onCompletion
tidak akan pernah dipanggil karena streaming snapshot tidak pernah berakhir.
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 | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan diproses. |
opsi | SnapshotListenOptions | Opsi yang mengontrol perilaku pemrosesan. |
padaBerikutnya | (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => kosong | Callback yang akan dipanggil setiap kali DocumentSnapshot baru tersedia. |
onError | (error: FirestoreError) => kosong | Callback yang akan dipanggil jika pemrosesan gagal atau dibatalkan. Tidak ada callback lebih lanjut yang akan terjadi. |
saat Penyelesaian | () => kosong | Dapat diberikan, tetapi tidak akan dipanggil karena streaming tidak pernah berakhir. |
Hasil:
Fungsi berhenti berlangganan yang dapat dipanggil untuk membatalkan pemroses snapshot.
setDoc(referensi, data)
Menulis ke dokumen yang dirujuk oleh DocumentReference
ini. Jika belum ada, dokumen akan dibuat.
Tanda Tangan:
export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan ditulis. |
data | WithFieldValue<AppModelType> | Peta kolom dan nilai untuk dokumen. |
Hasil:
Janji<void>
Promise
di-resolve setelah data berhasil ditulis ke backend (perhatikan bahwa ini tidak akan di-resolve saat Anda offline).
setDoc(referensi, data, opsi)
Menulis ke dokumen yang dirujuk oleh DocumentReference
yang ditentukan. Jika belum ada, dokumen akan dibuat. Jika Anda memberikan merge
atau mergeFields
, data yang diberikan dapat digabungkan ke dalam dokumen yang sudah ada.
Tanda Tangan:
export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan ditulis. |
data | PartialWithFieldValue<AppModelType> | Peta kolom dan nilai untuk dokumen. |
opsi | SetOptions | Objek untuk mengonfigurasi perilaku yang ditetapkan. |
Hasil:
Janji<void>
Promise diselesaikan setelah data berhasil ditulis ke backend (perhatikan bahwa ini tidak akan diselesaikan saat Anda offline).
updateDoc(referensi, data)
Memperbarui kolom dalam dokumen yang dirujuk oleh DocumentReference
yang ditentukan. Pembaruan akan gagal jika diterapkan ke dokumen yang tidak ada.
Tanda Tangan:
export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan diperbarui. |
data | UpdateData<DbModelType> | Objek yang berisi kolom dan nilai yang akan digunakan untuk memperbarui dokumen. Kolom dapat berisi titik untuk mereferensikan kolom bertingkat dalam dokumen. |
Hasil:
Janji<void>
Promise
di-resolve setelah data berhasil ditulis ke backend (perhatikan bahwa ini tidak akan di-resolve saat Anda offline).
updateDoc(referensi, kolom, nilai, moreFieldsAndValues)
Memperbarui kolom dalam dokumen yang dirujuk oleh DocumentReference
yang ditentukan Pembaruan akan gagal jika diterapkan ke dokumen yang tidak ada.
Kolom bertingkat dapat diperbarui dengan memberikan string jalur kolom yang dipisahkan titik atau dengan memberikan objek FieldPath
.
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 | Deskripsi |
---|---|---|
referensi | DocumentReference<AppModelType, DbModelType> | Referensi ke dokumen yang akan diperbarui. |
medan | rangkaian | FieldPath | Kolom pertama yang akan diperbarui. |
value | tidak diketahui | Nilai pertama. |
moreFieldsAndValues | tidak diketahui[] | Pasangan nilai kunci tambahan. |
Hasil:
Janji<void>
Promise
di-resolve setelah data berhasil ditulis ke backend (perhatikan bahwa ini tidak akan di-resolve saat Anda offline).
function(setelan, ...)
memoryLocalCache(setelan)
Membuat instance MemoryLocalCache
. Instance dapat disetel ke FirestoreSettings.cache
untuk memberi tahu SDK lapisan cache mana yang akan digunakan.
Tanda Tangan:
export declare function memoryLocalCache(settings?: MemoryCacheSettings): MemoryLocalCache;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
setelan | MemoryCacheSettings |
Hasil:
memoryLruGarbageCollector(setelan)
Membuat instance MemoryLruGarbageCollector
.
Ukuran target dapat ditentukan sebagai bagian dari parameter setelan. Pengumpul akan mulai menghapus dokumen setelah ukuran cache melebihi ukuran yang diberikan. Ukuran cache default adalah 40 MB (40 * 1024 * 1024 byte).
Tanda Tangan:
export declare function memoryLruGarbageCollector(settings?: {
cacheSizeBytes?: number;
}): MemoryLruGarbageCollector;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
setelan | { cacheSizeBytes?: number; } |
Hasil:
persistentLocalCache(setelan)
Membuat instance PersistentLocalCache
. Instance dapat disetel ke FirestoreSettings.cache
untuk memberi tahu SDK lapisan cache mana yang akan digunakan.
Cache persisten tidak dapat digunakan di lingkungan Node.js.
Tanda Tangan:
export declare function persistentLocalCache(settings?: PersistentCacheSettings): PersistentLocalCache;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
setelan | PersistentCacheSettings |
Hasil:
persistentSingleTabManager(setelan)
Membuat instance PersistentSingleTabManager
.
Tanda Tangan:
export declare function persistentSingleTabManager(settings: PersistentSingleTabManagerSettings | undefined): PersistentSingleTabManager;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
setelan | PersistentSingleTabManagerSettings | tidak ditentukan | Mengonfigurasi pengelola tab yang dibuat. |
Hasil:
function(snapshot, ...)
endAt(snapshot)
Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir pada dokumen yang disediakan (inklusif). Posisi akhir relatif terhadap urutan kueri. Dokumen harus berisi semua kolom yang diberikan di orderBy kueri.
Tanda Tangan:
export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
snapshot | DocumentSnapshot<AppModelType, DbModelType> | Snapshot dokumen akhir. |
Hasil:
QueryEndAtConstraint untuk diteruskan ke query()
endSebelum(snapshot)
Membuat QueryEndAtConstraint yang mengubah kumpulan hasil agar berakhir sebelum dokumen yang diberikan (eksklusif). Posisi akhir relatif terhadap urutan kueri. Dokumen harus berisi semua kolom yang diberikan di orderBy kueri.
Tanda Tangan:
export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
snapshot | DocumentSnapshot<AppModelType, DbModelType> | Snapshot dokumen yang akan diakhiri. |
Hasil:
QueryEndAtConstraint untuk diteruskan ke query()
startAfter(snapshot)
Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai setelah dokumen yang diberikan (eksklusif). Posisi awal relatif terhadap urutan kueri. Dokumen harus berisi semua kolom yang diberikan di orderBy kueri.
Tanda Tangan:
export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
snapshot | DocumentSnapshot<AppModelType, DbModelType> | Snapshot dokumen yang akan dimulai setelahnya. |
Hasil:
QueryStartAtConstraint untuk diteruskan ke query()
startAt(snapshot)
Membuat QueryStartAtConstraint yang mengubah kumpulan hasil agar dimulai pada dokumen yang disediakan (inklusif). Posisi awal relatif terhadap urutan kueri. Dokumen ini harus berisi semua kolom yang diberikan dalam orderBy
kueri ini.
Tanda Tangan:
export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
snapshot | DocumentSnapshot<AppModelType, DbModelType> | Snapshot dokumen untuk memulai. |
Hasil:
QueryStartAtConstraint untuk diteruskan ke query()
.
function(nilai, ...)
vektor(nilai)
Membuat VectorValue
baru yang dibuat dengan salinan array angka yang diberikan.
Tanda Tangan:
export declare function vector(values?: number[]): VectorValue;
Parameter
Parameter | Jenis | Deskripsi |
---|---|---|
nilai | angka[] | Buat instance VectorValue dengan salinan array angka ini. |
Hasil:
VectorValue
baru yang dibuat dengan salinan array angka yang diberikan.
CACHE_SIZE_UNLIMITED
Konstanta yang digunakan untuk menunjukkan pembersihan sampah memori LRU harus dinonaktifkan. Tetapkan nilai ini sebagai cacheSizeBytes
pada setelan yang diteruskan ke instance Firestore.
Tanda Tangan:
CACHE_SIZE_UNLIMITED = -1
AddPrefixToKeys
Menampilkan peta baru dengan setiap kunci diawali dengan kunci luar yang ditambahkan ke titik.
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
Gabungan semua jenis AggregateField
yang didukung oleh Firestore.
Tanda Tangan:
export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;
AggregateSpecData
Jenis yang kuncinya diambil dari AggregateSpec
, dan yang nilainya merupakan hasil agregasi yang dilakukan oleh AggregateField
yang sesuai dari AggregateSpec
input.
Tanda Tangan:
export declare type AggregateSpecData<T extends AggregateSpec> = {
[P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};
JenisAgregat
Jenis gabungan yang mewakili jenis gabungan yang akan dilakukan.
Tanda Tangan:
export declare type AggregateType = 'count' | 'avg' | 'sum';
KolomUpdateAnak
Bantuan untuk menghitung kolom bertingkat untuk jenis T1 yang diberikan. Hal ini diperlukan untuk mendistribusikan jenis union seperti undefined | {...}
(terjadi untuk properti opsional) atau {a: A} | {b: B}
.
Dalam kasus penggunaan ini, V
digunakan untuk mendistribusikan jenis union T[K]
di Record
, karena T[K]
dievaluasi sebagai ekspresi dan tidak didistribusikan.
Lihat 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
Jenis DocumentChange
dapat berupa 'ditambahkan', 'dihapus', atau 'dimodifikasi'.
Tanda Tangan:
export declare type DocumentChangeType = 'added' | 'removed' | 'modified';
FirestoreErrorCode
Kumpulan kode status Firestore. Kode tersebut sama dengan kode yang diekspos oleh gRPC di sini: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md
Nilai yang mungkin: - 'cancelled': Operasi dibatalkan (biasanya oleh pemanggil). - 'tidak diketahui': Error tidak diketahui atau error dari domain error yang berbeda. - 'invalid-argument': Klien menentukan argumen yang tidak valid. Perhatikan bahwa ini berbeda dengan 'failed-precondition'. 'argumen-tidak valid' menunjukkan argumen yang bermasalah, apa pun status sistemnya (mis. nama kolom yang tidak valid). - 'batas waktu terlampaui': Batas waktu berakhir sebelum operasi selesai. Untuk operasi yang mengubah keadaan sistem, error ini mungkin ditampilkan, bahkan jika, operasi tersebut telah selesai. Sebagai contoh, respons berhasil dari suatu server dapat tertunda selama waktu yang cukup lama hingga tenggat waktu berakhir. - 'not-found': Beberapa dokumen yang diminta tidak ditemukan. - 'sudah ada': Beberapa dokumen yang kami coba buat sudah ada. - 'permission-denied': Pemanggil tidak memiliki izin untuk menjalankan operasi yang ditentukan. - 'resource habis': Beberapa resource telah habis, mungkin kuota per pengguna, atau mungkin kapasitas seluruh sistem file sudah habis. - 'failed-precondition': Operasi ditolak karena sistem tidak dalam status yang diperlukan untuk eksekusi operasi. - 'dibatalkan': Operasi dibatalkan, biasanya karena masalah konkurensi seperti pembatalan transaksi, dll. - 'out-of-range': Operasi dicoba melewati rentang yang valid. - 'unimplementation': Operasi tidak diterapkan atau tidak didukung/diaktifkan. - 'internal': Error internal. Artinya, beberapa invarian yang diharapkan oleh sistem yang mendasarinya telah rusak. Jika Anda melihat error ini, artinya ada sesuatu yang sangat rusak. - 'unavailable': Layanan saat ini tidak tersedia. Kemungkinan besar ini adalah kondisi sementara dan dapat diperbaiki dengan mencoba kembali dengan backoff. - 'kehilangan data': Data hilang atau rusak yang tidak dapat dipulihkan. - 'unauthenticated': Permintaan tidak memiliki kredensial autentikasi yang valid untuk operasi.
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
Jenis gabungan dari semua lapisan cache SDK yang didukung.
Tanda Tangan:
export declare type FirestoreLocalCache = MemoryLocalCache | PersistentLocalCache;
ListenSource
Menjelaskan sumber yang didengarkan kueri.
Setel ke default
untuk memproses perubahan cache dan server. Setel ke cache
untuk memproses perubahan dalam cache saja.
Tanda Tangan:
export declare type ListenSource = 'default' | 'cache';
KolektorGarbageMemori
Jenis gabungan dari semua mendukung pembersih sampah memori untuk cache lokal memori.
Tanda Tangan:
export declare type MemoryGarbageCollector = MemoryEagerGarbageCollector | MemoryLruGarbageCollector;
NestedUpdateFields
Untuk setiap kolom (misalnya 'bar'), temukan semua kunci bertingkat (misalnya, {'bar.baz': T1, 'bar.qux': T2}). Gabungkan semuanya untuk membuat satu peta yang berisi semua kemungkinan kunci yang semuanya ditandai sebagai opsional
Tanda Tangan:
export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
[K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;
UrutanByDirection
Arah klausa orderBy() ditentukan sebagai 'desc' atau 'menaik' (menurun atau menaik).
Tanda Tangan:
export declare type OrderByDirection = 'desc' | 'asc';
PartialWithFieldValue
Serupa dengan Partial<T>
TypeScript, tetapi memungkinkan kolom bertingkat dihilangkan dan FieldValues diteruskan sebagai nilai properti.
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
Gabungan dari semua pengelola tab yang tersedia.
Tanda Tangan:
export declare type PersistentTabManager = PersistentSingleTabManager | PersistentMultipleTabManager;
Primitif
Jenis primitif.
Tanda Tangan:
export declare type Primitive = string | number | boolean | undefined | null;
QueryConstraintType
Menjelaskan berbagai batasan kueri yang tersedia di SDK ini.
Tanda Tangan:
export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';
QueryFilterConstraint
QueryFilterConstraint
adalah jenis gabungan bantuan yang mewakili QueryFieldFilterConstraint dan QueryCompositeFilterConstraint.
Tanda Tangan:
export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;
QueryNonFilterConstraint
QueryNonFilterConstraint
adalah jenis union bantuan yang mewakili QueryConstraints yang digunakan untuk mempersempit atau mengurutkan kumpulan dokumen, tetapi tidak memfilter kolom dokumen secara eksplisit. QueryNonFilterConstraint
dibuat dengan memanggil orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() atau limitToLast(), serta dapat diteruskan ke query() untuk membuat instance kueri baru yang juga berisi QueryConstraint
.
Tanda Tangan:
export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;
SetOptions
Objek opsi yang mengonfigurasi perilaku setDoc(), dan panggilan. Panggilan ini dapat dikonfigurasi untuk melakukan penggabungan terperinci, bukan menimpa dokumen target secara keseluruhan dengan memberikan SetOptions
dengan merge: true
.
Tanda Tangan:
export declare type SetOptions = {
readonly merge?: boolean;
} | {
readonly mergeFields?: Array<string | FieldPath>;
};
{i>TaskState<i}
Merepresentasikan status tugas pemuatan paket.
Kedua 'Error' dan 'Success' are sinking state: tugas akan dibatalkan atau selesai dan tidak akan ada lagi update setelah dilaporkan.
Tanda Tangan:
export declare type TaskState = 'Error' | 'Running' | 'Success';
UnionToIntersection
Dengan mempertimbangkan jenis gabungan U = T1 | T2 | ...
, menampilkan jenis (T1 & T2 & ...)
yang berpotongan.
Menggunakan jenis bersyarat distributif dan inferensi dari jenis bersyarat. Ini berfungsi karena beberapa kandidat untuk variabel jenis yang sama dalam posisi kontra-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-to-intersection-type
Tanda Tangan:
export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
{i>UpdateData<i}
Memperbarui data (untuk digunakan dengan updateDoc()) yang berisi jalur kolom (mis. 'foo' atau 'foo.baz') yang dipetakan ke nilai. Kolom yang berisi titik merujuk ke kolom bertingkat dalam dokumen. FieldValues dapat diteruskan sebagai nilai properti.
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>;
TempatFilterOp
Kondisi filter dalam klausa where() ditetapkan menggunakan string '<', '<=', '==', '!=', '>=', '>', 'array-contains', 'in', 'array-contains-any', dan 'not-in'.
Tanda Tangan:
export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';
DenganNilaiKolom
Memungkinkan FieldValues diteruskan sebagai nilai properti dengan tetap mempertahankan keamanan jenis.
Tanda Tangan:
export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
[K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);