Javascript 如何检查数据是否存在?
Firebase规则配置:Javascript 如何检查数据是否存在?,javascript,firebase,react-native,firebase-realtime-database,expo,Javascript,Firebase,React Native,Firebase Realtime Database,Expo,Firebase规则配置: { "rules": { ".read": "auth != null", ".write": "auth != null" } } Firebase数据库数据示例 使用这个,我想出了如下的一些东西,但不起作用 const { currentUser } = firebase.auth(); console.log(currentUser.
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
Firebase数据库数据示例
使用这个,我想出了如下的一些东西,但不起作用
const { currentUser } = firebase.auth();
console.log(currentUser.uid);
firebase.database().
ref(`/users/${currentUser.uid}/userSettings`)
.child({ userSetting_DisplayName, userSetting_City, userSetting_DailyLimit })
.once('value', function(snapshot) {
if (snapshot.exists()) {
console.log('exist');
}else{
console.log('not exist');
}
});
哪个部分可能出错?将其更改为:
firebase.database().
ref(`/users/${currentUser.uid}/userSettings`)
.once('value', function(snapshot) {
if (snapshot.exists()) {
console.log('exist');
}else{
console.log('not exist');
}
});
然后,您将能够检查userSettings
或者,如果要检查特定子级是否具有特定数据,则可以执行以下操作:
ref(`/users/${currentUser.uid}/userSettings`).orderByChild("userSetting_city").equalTo(valuehere).once(...
或者,如果您想检查是否存在特定的孩子:
ref(`/users/${currentUser.uid}/userSettings`).child("userSetting_DisplayName").once(...
也可从文件中获得:
child
child(path)
返回firebase.database.Reference
获取指定相对路径处位置的引用
相对路径可以是一个简单的子名称(例如,“ada”)或一个更深的斜杠分隔路径(例如,“ada/name/first”)
另外,子对象用于通过一条路径,所有这些子对象都处于同一级别,因此它不起作用。我认为这行:.child({userSetting\u DisplayName,userSetting\u City,userSetting\u dailyllimit})
因为我怀疑您是否可以在此处和此处将对象用作子对象