Adakah terdapat cara dalam firebase untuk menyemak sama ada nilai wujud dalam pangkalan data? Firebase mempunyai kaedah .exists() tetapi menurut dokumentasi ia hanya menyemak kunci.
Saya mempunyai struktur berikut:
{ "pengguna": { "-KKUmYgLYREWCnWeHCvO": { "fName": "Peter", "ID": "U1EL9SSUQ", "nama pengguna": "peter01" }, "-KKUmYgLYREWCnWeHCvO": { "fName": "John", "ID": "U1EL5623", "nama pengguna": "john.doe" } } }
Saya ingin menyemak sama ada ID dengan nilai
Jika anda ingin menyemak sama ada e-mel wujud dalam Firebase, berikut ialah penyelesaian yang serupa
exists()
方法是 Firebase 查询返回的snapshot
Sebahagian daripada objek. Jadiperlu diingat bahawa anda tidak akan dapat mengelak daripada mendapatkan semula data untuk mengesahkan bahawa ia wujud.Hasil pemerhatian:
Jika anda berada dalam senario yang berbeza dan anda mempunyai laluan rujukan tepat di mana objek itu mungkin, tidak perlu menambah
orderByChild
和equalTo
. Dalam kes ini, anda boleh mendapatkan laluan objek secara langsung, jadi tiada pemprosesan carian diperlukan daripada firebase. Selain itu, jika anda mengetahui salah satu sifat yang mesti ada pada objek, anda boleh mengikuti coretan kod di bawah dan minta ia mendapatkan semula sifat itu sahaja dan bukannya keseluruhan objek. Hasilnya akan menjadi pemeriksaan yang lebih cepat.Sebagai contoh, jika setiap pengguna mempunyai nama pengguna dalam data mereka, anda boleh menggunakan ini: