你好我已经尝试了许多方法来获得它但我迷失了。
这是我的功能:
var ref = new Firebase("https://<my-url>.firebaseio.com/");
var ref2 = ref.orderByChild("matricula").equalTo(matricula);
var ref3 = ref2.on("value", function(snapshot){
console.log(snapshot.numChildren());
console.log(snapshot.val());
}
检索到的对象是:
Object {-KACGpGoGlVbgbHM4ibI: Object}
-KACGpGoGlVbgbHM4ibI: Object
carrera: "LAMX54"
comentarios: " "
curp: "rffgr4445454445"
matricula: "006843"
nombre: "JOSE GERARDO LOPEZ VILLARREAL"
postulado: "no"
tetra: "7"
__proto__: Object
__proto__: Object
好的,当我尝试获取snapshot.val()。carrera时,响应是“未定义的”,即使我尝试获取snapshot.key()响应为“null”,我怎样才能得到里面的值对象?,提前谢谢!!!!!
答案 0 :(得分:0)
执行查询时,可能有许多与该条件匹配的子节点。因此,您的value
事件将由一组子节点触发。即使只有一个孩子,它仍然会在一个集合中。
要处理这个问题,你需要循环遍历孩子:
var ref = new Firebase("https://<my-url>.firebaseio.com/");
var ref2 = ref.orderByChild("matricula").equalTo(matricula);
var ref3 = ref2.on("value", function(parent){
console.log(parent.numChildren());
console.log(parent.val());
parent.forEach(function(snapshot) {
console.log(snapshot.val().carrera);
});
});