Firebase JavaScript 快照获取值

Firebase JavaScript snapshot get values

当我如下所示从 Firebase 实时数据库抓取一个项目的快照时,当我 console.log snapshot.val 和键时,我可以在console.log。但我看不到他们。例如,那里有一个 lastvisited 属性,但 snapshot.val().lastvisited 只是 returns 未定义。我不知道获取那个值的语法 属性?

 pageCountersRef.orderByChild('location').equalTo(newcount.location).once('value', function (snapshot) {
            if (snapshot.val()) {
                console.log(snapshot.val());
                var arr = Object.keys(snapshot.val());
                var key = arr[0];
                console.log(key);

}

这是我在 console.log 中看到的内容。似乎我应该能够从那里获取 .lastreffer、.lastvisit、.location 和 .vists,但我尝试的所有内容 returns 未定义,即使我可以在控制台中看到其中的值。

enter image description here

尝试以下操作:

pageCountersRef.orderByChild('location').equalTo(newcount.location).once('value', function (snapshot) {
snapshot.forEach(function(child) {
            var lastvisit=child.val().lastvisit;
            var keys=child.key;
          });
       });

您需要使用 forEach 才能在属性内部迭代并获取它们的值。