1
我試圖從子節點數據獲取密鑰。在JavaScript中獲取子節點的密鑰Firebase
$(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
。還說,
路徑必須爲非空字符串,不能包含 「」, 「#」, 「$」, 「[」 或 「]」
目前我創建數據到火力地堡它看起來像這樣:
-players
-Johnson
-KWH4mjWbOuptod_vV1o
name: "ajks"
我需要得到johnson
下鍵,該字母和數字的長字符串,所以我可以引用特定節點,並添加數據,修改數據,或如更新數據名字。
[在Firebase中使用push()時可能有重複()如何拉取唯一ID](http://stackoverflow.com/questions/16637035/in-firebase-採用快插如何時,-DO-I-拉的唯一-ID) – cartant