Meteor 流星每秒重新绘制时钟

Meteor 流星每秒重新绘制时钟,meteor,Meteor,现在我用这个代码来显示时间。 但我一直在尝试使用简单的javascript每秒更新一次,但它不会显示在页面上。 有没有一个流星友好的方式来使用上述功能呢? 就像在1秒的时间间隔内使用setTimeout一样 我以前使用的javascript。 Template.display_time.time = function() { var date = new Date(); var hour = date.getHours(); var minute = date.get

现在我用这个代码来显示时间。 但我一直在尝试使用简单的javascript每秒更新一次,但它不会显示在页面上。 有没有一个流星友好的方式来使用上述功能呢? 就像在1秒的时间间隔内使用setTimeout一样

我以前使用的javascript。

  Template.display_time.time = function() {
    var date = new Date();
    var hour = date.getHours();
    var minute = date.getMinutes();
    var now = addZero(hour) + ":" + addZero(minute);
    return now
  };
函数更新时间(){
var currentTime=新日期();
var hours=currentTime.getHours();
var minutes=currentTime.getMinutes();
如果(小时<10)
{
小时数=“0”+小时数;
}
如果(分钟<10)
{
分钟=“0”+分钟;
}
变量v=小时+“:“+分钟+”;
setTimeout(“updateTime()”,1000);
document.getElementById('time').innerHTML=v;
}
updateTime();

该方法不起作用的原因是它不是一个反应式数据源

尝试以下方法

function updateTime() {
    var currentTime = new Date();
    var hours = currentTime.getHours();
    var minutes = currentTime.getMinutes();
    if (hours < 10)
    {
        hours = "0" + hours;
    }
    if (minutes < 10)
    {
        minutes = "0" + minutes;
    }
    var v = hours + ":" + minutes + " ";
    setTimeout("updateTime()",1000);
    document.getElementById('time').innerHTML=v;
}
updateTime();
请参阅有关Deps的文档

“Meteor有一个简单的依赖跟踪系统,它可以 每次会话时自动重新运行模板和其他计算 变量、数据库查询和其他数据源会更改。“


非常好,谢谢。我一直期望事情会比实际情况更困难:)
Template.display_time.time = function() {
    return Session.get('time');
};

Meteor.setInterval(function() {
    Session.set('time', getTime());
}, 1000);