【发布时间】:2017-03-25 08:41:46
【问题描述】:
我正在尝试从子节点数据中获取密钥。
$(document).on('click', '#enter', getName);
function getName() {
name = $('#user').val().trim();
database.ref('players/' + name).push({
name: name
})
}
database.ref('players/' + name).child(name).on("child_added",
function(childSnapshot){
var childKey = childSnapshot.key;
var childData = childSnapshot.val;
console.log('key', childKey)
console.log('data', childData)
}, function (errorObject) {
console.log("The read failed: " + errorObject.code);
})
})
在快照功能中,当我在控制台登录childKey时,它显示关键是用户名,即我在ref('players/' + name)中创建的路径。但我需要嵌套在name 节点内的节点的密钥。我的childSnapshot 函数出现错误,提示.child(name) is an invalid path。还说,
路径必须是非空字符串,并且不能包含“.”、“#”、“$”、“[”或“]”
目前,当我在 Firebase 上创建数据时,它看起来像这样:
-players
-Johnson
-KWH4mjWbOuptod_vV1o
name: "ajks"
我需要获取johnson 下的密钥,即一长串字母和数字,以便我可以引用该特定节点并添加数据、更改数据或更新名称等数据。
【问题讨论】:
标签: javascript firebase firebase-realtime-database