如何修复.startAt + .endAt

时间:2018-11-03 10:14:05

标签: firebase vue.js firebase-realtime-database

我想按从今天(现在)到下周(+7天或604800毫秒)的过期时间过滤我的孩子。这是我的代码。知道为什么它不起作用吗?谢谢!

firebase.database().ref('event').orderByChild('expires')
                                .startAt(Date.now()/1000)
                                .endAt((Date.now()/1000)+604800)
                                .once('value')

1 个答案:

答案 0 :(得分:1)

我相信数学上的小错误,我不知道为什么我们要微秒(/ 1000),所以尝试一下

def pattern(active,ready):
        rule=[ (active,'activated',''),(ready,'ready',''),(active,'activated occurred',''),(ready,'set to go','') ]
        return [ t[1] if t[0] else t[2] for t in rule ]

str= 'aquire {} lorem ipsum {} another {} lorem2 {}'
print( str.format(*pattern(True,True)) )

Out: "aquire activated lorem ipsum ready another activated occurred lorem2 set to go"

然后

var start = Date.now();
var end = Date.now() + 604800000;

您可以对此进行验证

firebase.database().ref('event').orderByChild('expires')
                                .startAt(start)
                                .endAt(end)
                                .once('value')

其输出为7天,开始日期为今天,结束日期为今天的7天。