Firebase - 从推送的项目中检索数据
Firebase - Retrieving data from pushed items
我被困在如何从 firebase 检索推送数据的问题上。我已经设置了身份验证,并且有两个用户推送了一些数据:
{
"deck" : {
"-JkpwAnieKjQVsdtPD4m" : {
"deckName" : "Deck 1",
"color" : "Red",
"user" : "simplelogin:1"
},
"-Jkq4unexm-qwhO_U2YO" : {
"deckName" : "Deck 2",
"color" : "Blue",
"user" : "simplelogin:1"
},
"-Jkq5-II1q5yM6w3ytmG" : {
"deckName" : "Deck 3",
"color" : "Green",
"user" : "simplelogin:6"
}
}
}
那我运行:
deckRef.once('value', function(dataSnapshot) {
console.log(dataSnapshot.val());
});
其中 returns 这 3 个使用 push() 生成的密钥推送。
firebase 似乎有一种方法可以说检索由 "simplelogin:1"(所以红色和蓝色)创建的所有颜色条目,但我就是想不通。
您可能正在寻找 Firebase 的查询,它允许您:
deckRef.orderByChild('user').equalTo('simplelogin:1').on(...
不要忘记将 user
添加到您的安全规则中的 .indexOn
。
参见:
像这样查询你的数据
deckRef.orderByKey().once('child_added', function(dataSnapshot) {
console.log(dataSnapshot.val());
});
注意:orderByKey()
适用于 child_added
事件类型
我被困在如何从 firebase 检索推送数据的问题上。我已经设置了身份验证,并且有两个用户推送了一些数据:
{
"deck" : {
"-JkpwAnieKjQVsdtPD4m" : {
"deckName" : "Deck 1",
"color" : "Red",
"user" : "simplelogin:1"
},
"-Jkq4unexm-qwhO_U2YO" : {
"deckName" : "Deck 2",
"color" : "Blue",
"user" : "simplelogin:1"
},
"-Jkq5-II1q5yM6w3ytmG" : {
"deckName" : "Deck 3",
"color" : "Green",
"user" : "simplelogin:6"
}
}
}
那我运行:
deckRef.once('value', function(dataSnapshot) {
console.log(dataSnapshot.val());
});
其中 returns 这 3 个使用 push() 生成的密钥推送。
firebase 似乎有一种方法可以说检索由 "simplelogin:1"(所以红色和蓝色)创建的所有颜色条目,但我就是想不通。
您可能正在寻找 Firebase 的查询,它允许您:
deckRef.orderByChild('user').equalTo('simplelogin:1').on(...
不要忘记将 user
添加到您的安全规则中的 .indexOn
。
参见:
像这样查询你的数据
deckRef.orderByKey().once('child_added', function(dataSnapshot) {
console.log(dataSnapshot.val());
});
注意:orderByKey()
适用于 child_added
事件类型