2017-09-22 47 views
1

獲得的第一個孩子的數據我的數據庫看起來是這樣的:火力地堡網絡從autoChildID

Database image

我想獲得的unassignedBeaconIDs的第一個孩子,讀取數據beaconIDmajorminorunassignedBeaconIDs刪除。

這裏是我的代碼:

var refBeaconID = firebase.database().ref(pathToBeaconIDs).limitToFirst(1); 
refBeaconID.once('value', function(snap) 
{ 
    var firstItem = snap.val(); // first item, in format {"<KEY>": "<VALUE>"} 
    console.log("The first item"); 
    console.log(firstItem.beaconID); 
    refBeaconID.child(firstItem.key).removeValue; 
}); 

的問題是childAutoID價值。結果我總是得不到定義。

回答

0

當您針對Firebase數據庫執行查詢時,可能會有多個結果。所以快照包含了這些結果的列表。即使只有一個結果,快照也會包含一個結果列表。

所以你需要循環在回調快照的孩子:

var refBeaconID = firebase.database().ref(pathToBeaconIDs).limitToFirst(1); 
refBeaconID.once('value', function(snap) 
{ 
    snap.forEach(function(child) { 
     var firstItem = child.val(); 
     console.log("The first item"); 
     console.log(firstItem.beaconID);  
    }); 
}); 

我不能完全肯定翻譯成什麼refBeaconID.child(firstItem.key).removeValue;,但如果你想登錄之後刪除子:child.ref.remove();