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 '<', '<=', '==', '!=', '>=', '>', '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 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:
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:
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:
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
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:
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 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:
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:
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:
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()
.
{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, ...)
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 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.
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 '<', '<=', '==', '!=', '>=', '>', '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);