我有一个JS函数,该函数进入Firebase实时数据库中以读取一些对象。它检查的对象有几个字段,但是我只想要其中之一,URL密钥及其值。这是我的检索数据的函数:
const dbRefObject = firebase.database().ref('gifs');
dbRefObject.on('value', gotData);
function gotData(data){
dbRefObject.once('value', function(snapshot){
snapshot.forEach(function(childSnapshot){
var childKey = childSnapshot.key;
var childData = childSnapshot.val();
console.log(childKey, " ", childData);
})
}
)
}
实际返回的数据如下:
Content Description: "Hack The Planet"
Date Added: "08/04/2020"
Permission: "Admin"
URL: "https://firebasestorage.googleapis.com/v0/b/..."
我只想访问URL密钥及其数据,但似乎无法访问。我已经尝试过执行childData [3],但是它不起作用。任何帮助将不胜感激。
答案 0 :(得分:0)
实时数据库中的子值始终由其名称而不是其顺序指定。要从快照获取URL,您将需要使用:
var childData = childSnapshot.val();
var URL = childData.URL;
请注意,子项的名称成为val()
返回的对象的键。