Javascript 使用Firebase的服务器端计算

Javascript 使用Firebase的服务器端计算,javascript,firebase,Javascript,Firebase,给定开始时间/日期和持续时间,如何进行服务器端计算,以确定对象是“已完成”,“正在进行”,还是“即将到来” 客户端javascript以确定节目是否已开始: // if negative, then show hasn't started yet var time = (-(startdate.getTime() - currentdate.getTime()) / 1000 / 60); 客户端javascript以确定节目是否已完成运行: // if negative, then sho

给定开始时间/日期和持续时间,如何进行服务器端计算,以确定对象是
“已完成”
“正在进行”
,还是
“即将到来”

客户端javascript以确定节目是否已开始:

// if negative, then show hasn't started yet
var time = (-(startdate.getTime() - currentdate.getTime()) / 1000 / 60); 
客户端javascript以确定节目是否已完成运行:

// if negative, then show has finished
var timeLeft = channelDuration - timerStartTime;

无法在Firebase上运行自己的服务器端代码。见:

但您可以存储服务器端时间戳,这似乎是您正在尝试的:

ref.child('Show/startTimestamp').set(Firebase.ServerValue.TIMESTAMP);
然后,您可以获得尚未开始的节目:

var shows = ref.child('Shows');
ref.orderByChild('startTimeStamp').startAt(Date.now()).on(...

对于路过的人,我想现在Firebase允许您通过
云功能
来实现这一点。对于这种情况,您可以创建一个函数,当数据添加到数据库中时,该函数通过其他参数确定状态的
状态

请结帐


可能重复Hey Frank的功能,将来有没有可能添加这些功能?
var shows = ref.child('Shows');
ref.orderByChild('startTimeStamp').startAt(Date.now()).on(...