我试图访问" id"并将其存储在变量中。到目前为止,我的代码是:
var ref = firebase.database().ref("users");
ref.on("value", function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var childData = childSnapshot.val();
console.log(childData);
});
});
我从上面得到的是:
有了这个我可以访问对象本身,但是如何访问该属性" id"?我正在阅读official documentation,但我无法弄清楚。
答案 0 :(得分:4)
这样做:
var ref = firebase.database().ref("users");
ref.on("value", function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var childData = childSnapshot.val();
var id=childData.id;
console.log(childData);
});
});
在上面,该位置位于users
,然后您使用on()
方法读取数据,并使用forEach
循环,在pushid
内迭代并获取值。
要单独访问每个人,请执行此操作var ids=childData.id;
或/和var names=childData.name;
最好使用once()
,因为它只读取一次数据。
答案 1 :(得分:1)
您需要获取父节点(L2L6vBsd45DFGfh
)的密钥才能访问id
子
在firebase中使用push()
方法时,它会自动为您的记录生成唯一键。
使用set()
或update()
方法创建自己的自定义密钥。
var ref = firebase.database().ref("users");
ref.on("value", function(snapshot) {
var childData = snapshot.val();
var key = Object.keys(childData)[0]; //this will return 1st key.
console.log(childData[key].id);
});
您将使用
for-loop
或forEach
获取所有keys
。