我是Firebase数据库的人 看起来像这样。
我有很多不同身份证的产品。
现在:我的API中有一个函数getbyID:
getbyId: function(myId) {
var obj = FireBase.database().ref('product')
.orderByChild('id')
.equalTo(myId)
.once("value", function(snapshot) {
var key;
snapshot.forEach(function (childSnapshot) {
key = childSnapshot.key;
return true;
});
if (key) {
console.log(FireBase.database().ref('product').child(key).toString());
return (FireBase.database().ref('product').child(key).toString());
} else {
console.log("Your ID doesn't exist");
}
});
console.log(obj);
return (obj);
},
我希望这个函数返回与我在param中给出的好ID相对应的JSON。 在if(key)
之后使用控制台日志打印时,它正在工作 console.log(FireBase.database().ref('product').child(key).toString());
这个console.log打印出elem的链接(而不是Json :()
然而问题是当我打印" obj"
console.log(obj)
这个console.log打印了我的承诺:((所以我不能回复我想要的元素。我无法找到原因。
我听说过异步和等待,但我不知道如何实现它。
非常感谢