我正在尝试检查firebase实时数据库中是否存在某个值。然而,它一直说它不存在。这是我的代码
check(){
var checkRef = firebase.database().ref('users');
checkRef.once('value', function(snapshot) {
if(snapshot.val().hasOwnProperty('referralCode')) {
console.log("Referral Code exist.");
}
else {
console.log("Referral Code does not exist.");
}
});
}
感谢
我正在使用Ionic 5
我认为您使用的是javascript"hasOwnProperty";方法,而您需要使用firebase提供的方法";hasChild":
// Assume we have the following data in the Database:
{
"name": {
"first": "Ada",
"last": "Lovelace"
}
}
// Determine which child keys in DataSnapshot have data.
var ref = firebase.database().ref("users/ada");
ref.once("value")
.then(function(snapshot) {
var hasName = snapshot.hasChild("name"); // true
var hasAge = snapshot.hasChild("age"); // false
});
所以在你的情况下应该是这样的:
check(){
var checkRef = firebase.database().ref('users');
checkRef.once('value', function(snapshot) {
if(snapshot.hasChild('referralCode')) {
console.log("Referral Code exist.");
}
else {
console.log("Referral Code does not exist.");
}
});
}