首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在网页上显示完整的火基json数据

在网页上显示完整的火基json数据
EN

Stack Overflow用户
提问于 2016-03-06 08:32:04
回答 1查看 213关注 0票数 0

我正在使用firebase收集数据,我希望创建一个临时网页,以便在测试时快速查看json数据库(并共享它)。数据按日期字符串分组,然后是带有随机键的数据,然后是数据。例:

代码语言:javascript
运行
复制
{
  "20160304" : {
    "-KC-aOwSWpt4dlYmjJE4" : {
      "coordinates" : "-37.7811465912404, 145.005993055861",
      "event" : "Test event",
      "time" : "2016-03-04 07:48:43 +0000"
    }, etc...

为了测试显示事件数据,我在html中使用了javascript,如下所示:

代码语言:javascript
运行
复制
var myFirebaseRef = new Firebase("https://xxxx.firebaseio.com/");

myFirebaseRef.orderByKey().on("value", function(snapshot) {
  snapshot.forEach(function(snapshot) {
    console.log("The " + snapshot.key() + " event is " + snapshot.val().event);
  });
});

但它只返回20160304事件未定义,20160305事件未定义。

有人知道我怎么能抓住事件字符串吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-06 08:37:06

您试图跳过JSON中的一个级别:

代码语言:javascript
运行
复制
<date>
    <pushid>
        coordinates: ...
        event: ...
        time: ...

由于您正在监听根如果这个结构,您的snapshot.forEach()循环的日期。这意味着仍然需要遍历推送ids:

var myFirebaseRef =新的Firebase("https://xxxx.firebaseio.com/");

代码语言:javascript
运行
复制
myFirebaseRef.orderByKey().on("value", function(snapshot) {
  snapshot.forEach(function(snapshot) {
    var events = snapshot.val();
    Object.keys(events).forEach(function(key) {
      console.log(events[key]);
    });
  });
});

另一方面,如果你只想满足每天一次活动,你应该把它们储存在那里没有推杆水平。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35824736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档