按Firebase中的日期范围查询

时间:2016-04-16 21:27:24

标签: firebase

我试图在两个时间戳内显示我的firebase的所有条目。我的Firebase设置如下所示

https://my_firebase_url/users/7b49e1f4-a7c2-4d42-b2ef-145b0ff83d21/orders:

{
    "1234": {
        "size" : 45,
        "deliveryDate" : 1460844000000
},
{
    "1342": {
        "size" : 23,
        "deliveryDate" : 1243845000000
}

这是我的问题:

new Firebase('https://my_firebase_url/users/7b49e1f4-a7c2-4d42-b2ef-145b0ff83d21/orders')
            .orderByChild('deliveryDate')
            .startAt(1400000000000)
            .endAt(1500000000000)
            .once('value', function (snap) {
                console.log(snap.val());
            });

我的控制台窗口应显示ref.nr 1234的订单,而是显示null

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:4)

我将您的数据放入我的Firebase数据库并运行您的代码。我的输出是:

{ '1234': { deliveryDate: 1460844000000, size: 45 } }

但是,我必须修改您提供的数据,因为它在剪切中不是有效的JSON格式 - 换句话说它不是一个对象,因此它不能是存储的值一个Firebase节点 - 也许你犯了一个错字或者你正在编辑一个对象数组而不是那个键下的对象,如下面的评论中注意到的@TimVermeulen。我将其修改为:

{
    "1234": {
        "size" : 45,
        "deliveryDate" : 1460844000000
    },
    "1342": {
        "size" : 23,
        "deliveryDate" : 1243845000000
    }
}