2017-04-14 84 views
0

我wan't保存使用移动应用(iOS &的Android)在火力地堡一些数据,并获取通过与不同的查询,每个数据节点包括日期,用户标识web应用此数据等Firebase时间戳值和查询|的JavaScript

更新:我用下面的JavaScript代码来从火力地堡认为发帖今天只有数据(设置日期时间上午所以其保持获得了整天,而不是每次刷新页面被更改或重新打开数据)

var currentdate = new Date(); 
currentdate.setHours(0,0,0,0); 
ref.orderByChild("orderDate").startAt(currentdate.getTime()).on('child_added', function (snapshot) { 
var test = snapshot.child("orderTotal").val(); 
window.alert(test); 
}); 

currentdate.getTime()的值是:1492462800000 = 2017年4月17日星期一21:00:00 GMT这是昨天@ 09:00 PM而不是午夜12:00 AM? 我今天也发布了一些数据到Firebase 2017年4月18日星期二并根据我的查询startAt(currentdate.getTime())它应该返回今天的帖子,但它只是返回什么? 我已将currentdate.getTime()替换为我的帖子日期之一,其工作正常。

请问有人能告诉我这里有什么问题吗?

+0

看看这个转换器。 - > https://currentmillis.com –

+0

请参阅http://stackoverflow.com/questions/17637408/time-zone-for-firebase-servervalue-timestamp。实质上,您使用的两种服务和设备似乎都使用不同的时区将时间戳转换为显示日期。由于Firebase中存储了单个值(从1970年1月1日午夜开始以毫秒为单位),因此Firebase无法做到这一点。 –

回答

1

这似乎是一个时区差异。 Check this answer out

你基本上是以一种时区格式存储所有内容,然后转换为每个客户端。

+0

所以根据这个问题你发布这应该不会影响我的查询,对不对? –