Ответ 1
Нет явного метода exists()
, но вы можете работать со следующей логикой для его обработки.
ref.child("users").orderByChild("ID").equalTo("U1EL5623").once("value",snapshot => {
const userData = snapshot.val();
if (userData){
console.log("exists!");
}
});
Замечания:
Если вы находитесь в другом сценарии, в котором у вас есть точный путь ref, где вам может понадобиться объект orderByChild
и equalTo
. В этом случае вы можете напрямую выбрать путь к объекту, поэтому ему не нужна обработка поиска из firebase. Также в этом случае , если вы знаете одно из свойств, которое должен иметь объект, вы можете сделать как сниппет ниже и заставить его получить только это свойство, а не весь объект. Результат будет намного быстрее.
//every user must have an email
firebase.database().ref(`users/${userId}/email`).once("value", snapshot => {
const email = snapshot.val();
if (email){
console.log("user exists!");
}
});