@firebase/firestore/lite

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 yang ada dan terkait dengan FirebaseApp yang disediakan. Jika tidak ada instance, lakukan inisialisasi instance baru dengan setelan default.
menginisialisasiFirestore(aplikasi, setelan) Melakukan inisialisasi instance Cloud Firestore baru dengan setelan yang disediakan. Hanya dapat dipanggil sebelum fungsi lain, termasuk getFirestore(). Jika setelan kustom kosong, fungsi ini sama dengan memanggil getFirestore().
InitializeFirestore(aplikasi, setelan, databaseId) (BETA) Melakukan inisialisasi instance Cloud Firestore baru dengan setelan yang disediakan. Hanya dapat dipanggil sebelum fungsi lain, termasuk getFirestore(). Jika setelan kustom kosong, fungsi ini sama dengan memanggil getFirestore().
function(firestore, ...)
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.
doc(firestore, path, pathSegments) Mendapatkan instance DocumentReference yang merujuk ke dokumen di jalur absolut yang ditentukan.
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.
Stop(firestore) Menghentikan instance Firestore yang diberikan.Setelah memanggil terminate(), hanya fungsi clearIndexedDbPersistence() yang dapat digunakan. Fungsi lainnya akan menampilkan FirestoreError. Penghentian tidak membatalkan penulisan yang tertunda, dan promise apa pun yang sedang menunggu respons dari server tidak akan diselesaikan.Untuk memulai ulang setelah penghentian, buat instance Firestore baru dengan getFirestore().Catatan: Dalam keadaan normal, memanggil terminate() tidak diperlukan. Fungsi ini hanya berguna jika Anda ingin memaksa instance ini untuk melepaskan semua resource-nya atau dikombinasikan dengan clearIndexedDbPersistence() untuk memastikan bahwa semua status lokal dihancurkan di antara pengujian.
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.Hasil dari penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
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.
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 yang ada dan terkait 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.
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, ...)
getAggregate(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).
getCount(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 hasilnya terlalu besar untuk didownload sepenuhnya (ribuan dokumen).
getDocs(kueri) Menjalankan kueri dan menampilkan hasilnya sebagai QuerySnapshot.Semua kueri dijalankan langsung oleh server, meskipun kueri telah dijalankan sebelumnya. Modifikasi terbaru hanya ditampilkan dalam hasil yang diambil jika telah diterapkan oleh backend. Jika klien sedang offline, operasi akan gagal. Untuk melihat hasil yang sebelumnya di-cache dan modifikasi lokal, gunakan Firestore SDK lengkap.
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) Tambahkan dokumen baru ke CollectionReference yang ditentukan dengan data yang diberikan, yang akan menetapkan ID dokumen secara otomatis.Hasil penulisan ini hanya akan terlihat dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan diselesaikan. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
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.Penghapusan hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penghapusan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
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 referensi dokumen tertentu.Semua dokumen diambil langsung dari server, meskipun dokumen tersebut telah dibaca atau diubah sebelumnya. Modifikasi terbaru hanya ditampilkan dalam DocumentSnapshot yang diambil jika telah diterapkan oleh backend. Jika klien sedang offline, pembacaan akan gagal. Jika Anda ingin menggunakan penyimpanan cache atau melihat modifikasi lokal, gunakan Firestore SDK lengkap.
setDoc(referensi, data) Menulis ke dokumen yang dirujuk oleh DocumentReference yang ditentukan. Jika belum ada, dokumen akan dibuat.Hasil penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
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.Hasil penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan diselesaikan. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
updateDoc(referensi, data) Memperbarui kolom dalam dokumen yang dirujuk oleh DocumentReference yang ditentukan. Pembaruan akan gagal jika diterapkan ke dokumen yang tidak ada.Hasil dari pembaruan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, pembaruan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
updateDoc(referensi, kolom, nilai, moreFieldsAndValues) Kolom update 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.Hasil pembaruan ini hanya akan ditampilkan dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan diselesaikan. Jika klien sedang offline, pembaruan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.
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].
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.
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.
DocumentData Data dokumen (untuk digunakan dengan setDoc()) terdiri dari kolom yang dipetakan ke nilai.
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 Menentukan konfigurasi kustom untuk instance Cloud Firestore Anda. Anda harus menetapkannya sebelum memanggil metode lain.
TransactionOptions Opsi untuk menyesuaikan perilaku transaksi.

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.
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.
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.
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.
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 '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', '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:

Firestore

Instance Firestore 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 yang ada 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:

Firestore

Instance Firestore dari aplikasi yang disediakan.

inisialisasiFirestore(aplikasi, setelan)

Melakukan inisialisasi instance Cloud Firestore baru dengan setelan yang disediakan. 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: Settings): Firestore;

Parameter

Parameter Jenis Deskripsi
aplikasi AplikasiFirebase FirebaseApp yang akan dikaitkan dengan instance Firestore.
setelan Setelan Objek setelan untuk mengonfigurasi instance Firestore.

Hasil:

Firestore

Instance Firestore yang baru diinisialisasi.

inisialisasiFirestore(aplikasi, setelan, databaseId)

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

Melakukan inisialisasi instance Cloud Firestore baru dengan setelan yang disediakan. 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: Settings, databaseId?: string): Firestore;

Parameter

Parameter Jenis Deskripsi
aplikasi AplikasiFirebase FirebaseApp yang akan dikaitkan dengan instance Firestore.
setelan Setelan Objek setelan untuk mengonfigurasi instance Firestore.
IDdatabase string Nama database.

Hasil:

Firestore

Instance Firestore yang baru diinisialisasi.

function(firestore, ...)

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

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.

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.

penghentian(firestore)

Menghentikan instance Firestore yang disediakan.

Setelah memanggil terminate(), hanya fungsi clearIndexedDbPersistence() yang dapat digunakan. Fungsi lainnya akan menampilkan FirestoreError. Penghentian tidak membatalkan penulisan yang tertunda, dan semua promise yang sedang menunggu respons dari server tidak akan diselesaikan.

Untuk memulai ulang setelah penghentian, buat instance baru Firestore dengan getFirestore().

Tanda Tangan:

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

Parameter

Parameter Jenis Deskripsi
firestore Firestore Instance Firestore yang akan dihentikan.

Hasil:

Janji<void>

Promise yang diselesaikan saat instance berhasil dihentikan.

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.

Hasil penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

Tanda Tangan:

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

Parameter

Parameter Jenis Deskripsi
firestore Firestore

Hasil:

WriteBatch

WriteBatch yang dapat digunakan untuk menjalankan beberapa penulisan secara atomik.

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:

NilaiKolom

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:

FieldPath

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:

Firestore

Instance Firestore dari aplikasi yang disediakan.

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:

NilaiKolom

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 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:

Firestore

Instance Firestore dari aplikasi yang disediakan.

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:

NilaiKolom

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:

NilaiKolom

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

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 "&lt;", "&lt;=", "==", "&lt;", "&lt;=", "!=").
value tidak diketahui Nilai untuk perbandingan

Hasil:

QueryFieldFilterConstraint

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

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

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

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

QueryStartAtConstraint untuk diteruskan ke query().

{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

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

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:
  • debug untuk level logging panjang yang paling panjang, terutama untuk proses debug.
  • error untuk mencatat error saja.
  • silent to turn off logging.

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:

NilaiKolom

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

function(query, ...)

getAggregate(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).

Tanda Tangan:

export declare function getAggregate<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 getAggregate(query, {
  countOfDocs: count(),
  totalHours: sum('hours'),
  averageScore: average('score')
});

const countOfDocs: number = aggregateSnapshot.data().countOfDocs;
const totalHours: number = aggregateSnapshot.data().totalHours;
const averageScore: number | null = aggregateSnapshot.data().averageScore;

getCount(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).

Tanda Tangan:

export declare function getCount<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.

Semua kueri dijalankan langsung oleh server, bahkan jika kueri tersebut telah dieksekusi sebelumnya. Modifikasi terbaru hanya ditampilkan dalam hasil yang diambil jika telah diterapkan oleh backend. Jika klien sedang offline, operasi akan gagal. Untuk melihat hasil yang sebelumnya di-cache dan modifikasi lokal, gunakan Firestore SDK lengkap.

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> Query yang akan dieksekusi.

Hasil:

Promise<QuerySnapshot<AppModelType, DbModelType>>

Promise yang akan diselesaikan dengan hasil kueri.

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.

Hasil penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

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.

Pengecualian

Error - Jika input yang diberikan bukan dokumen Firestore yang valid.

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.

Penghapusan hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penghapusan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

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.

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 referensi dokumen tertentu.

Semua dokumen langsung diambil dari server, meskipun dokumen tersebut sebelumnya dibaca atau diubah. Modifikasi terbaru hanya ditampilkan dalam DocumentSnapshot yang diambil jika telah diterapkan oleh backend. Jika klien sedang offline, pembacaan akan gagal. Jika Anda ingin menggunakan penyimpanan cache atau melihat modifikasi lokal, gunakan Firestore SDK lengkap.

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.

setDoc(referensi, data)

Menulis ke dokumen yang dirujuk oleh DocumentReference yang ditentukan. Jika belum ada, dokumen akan dibuat.

Hasil penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

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.

Pengecualian

Error - Jika input yang diberikan bukan dokumen Firestore yang valid.

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.

Hasil penulisan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, penulisan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

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 di-resolve setelah data berhasil ditulis ke backend.

Pengecualian

Error - Jika input yang diberikan bukan dokumen Firestore yang valid.

updateDoc(referensi, data)

Memperbarui kolom dalam dokumen yang dirujuk oleh DocumentReference yang ditentukan. Pembaruan akan gagal jika diterapkan ke dokumen yang tidak ada.

Hasil dari pembaruan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, pembaruan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

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.

Pengecualian

Error - Jika input yang diberikan tidak valid untuk data Firestore.

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.

Hasil dari pembaruan ini hanya akan tercermin dalam pembacaan dokumen yang terjadi setelah promise yang ditampilkan di-resolve. Jika klien sedang offline, pembaruan akan gagal. Jika Anda ingin melihat modifikasi lokal atau penulisan buffer hingga klien online, gunakan Firestore SDK lengkap.

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.

Pengecualian

Error - Jika input yang diberikan tidak valid untuk data Firestore.

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

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

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

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

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

VectorValue baru yang dibuat dengan salinan array angka yang diberikan.

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;

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

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

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

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 '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', '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);