[英]React native and Firebase database doesnt map function
我在對象解析方面已經工作了很長時間,這個對象來自Firebase,但是我無法解析,請幫我怎么辦?
{
"user" : {
"qweqwe1231" : {
"-LKmfJ8X9FtL75-03yBf" : {
"gonderilenkisi":"asdasdad",
"gonderimzamani":"3123",
"metin":"dqweqweqe",
"okundumu":0
},
"-LKmgiBm8EB7LFDeOGbH" : {
"gonderilenkisi":"asdasdad",
"gonderimzamani":"3123",
"metin":"dqweqweqe",
"okundumu":0
}
}
}
我得到這樣的數據
firebase.database().ref().child('user').child('qweqwe1231').on('value',
(data)=>{
console.log(data.val())
});
而且我使用了map函數,但收到一條錯誤消息“ map不是函數”
firebase.database().ref().child('user').child('qweqwe1231').on('value',
(data)=>{
data.val().map((item)=>{ console.log(item.gonderilenkisi)})
});
該錯誤在我看來是正確的。 如果加載/user/qweqwe1231
則會得到以下JSON:
{
"-LKmfJ8X9FtL75-03yBf" : {
"gonderilenkisi" : "asdasdad",
"gonderimzamani" : "3123",
"metin" : "dqweqweqe",
"okundumu" : 0
},
"-LKmgiBm8EB7LFDeOGbH" : {
"gonderilenkisi" : "asdasdad",
"gonderimzamani" : "3123",
"metin" : "dqweqweqe",
"okundumu" : 0
}
}
這不是數組,因此上面沒有map()
方法。
您可能正在尋找對象的子對象。 由於沒有map()
方法,因此您必須:
Object.keys()
提取密鑰。 Array.forEach()
或Array.forEach()
鍵。 因此在代碼中:
firebase.database().ref().child('user').child('qweqwe1231').on('value', (snapshot)=>{
let data = snapshot.val();
let keys = Object.keys(data);
keys.forEach((key) => { console.log(data[key]); });
});
或者,你也可以遍歷的子女DataSnapshot
是火力地堡通過你DataSnapshot.forEach()
因此在代碼中:
firebase.database().ref().child('user').child('qweqwe1231')
.on('value', (snapshot)=>{
snapshot.forEach((item) => { console.log(item.val().gonderilenkisi); })
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.