Meteor.js中的简单时钟或如何重新加载模板
Simple Clock in Meteor.js or how to reload Templates?
我正在尝试使用metro.js中的Templates,但如何在给定时间后重新加载它们?例如,我想要一个名为";时间";它必须每秒重新加载以显示当前时间;日期";它必须每分钟重新加载一次,因为每分钟日期都可能更改,或者日历必须每5分钟左右重新加载.ics才能始终准确。
我当前的代码是这样的:
<body>
<!-- TOP -->
<div class="top left">{{> time }}</div>
<div class="top mid"></div>
<div class="top right">{{> date }}</div>
</body>
<template name="time">
<div>{{ clock }}</div>
</template>
<template name="date">
<div>{{ date }}</div>
</template>
js:
if (Meteor.isClient) {
Template.time.helpers({
clock: function () {
var currentTime = new Date();
var currentHours = currentTime.getHours();
var currentMinutes = currentTime.getMinutes();
var currentSeconds = currentTime.getSeconds();
currentHours = ( currentHours < 10 ? "0" : "" ) + currentHours;
currentMinutes = ( currentMinutes < 10 ? "0" : "" ) + currentMinutes;
currentSeconds = ( currentSeconds < 10 ? "0" : "" ) + currentSeconds;
return currentHours + ":" + currentMinutes + ":" + currentSeconds;
}
});
Tempate.date.helpers({
date: function () {
var month = ["Januar", "Februar", "März", "April", "Mai", "Juni", "July", "August", "September", "October", "November", "Dezember"];
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
return d + " " + month[m] + " " + y;
}
});
}
重新加载模板的最简单方法是提供和更改响应数据源。在您的情况下,这可能是时钟值。
var clock = new ReactiveVar(new Date());
Template.time.onCreated(function() {
Meteor.setInterval(function() {
clock.set(new Date());
}, 1000);
});
Template.time.helpers({
clock: function() {
var currentTime = clock.get();
...
},
});
相关文章:
- Chrome扩展没有't在重新加载之前考虑期权价值
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 在非我的页面上重新加载CSS
- ROR:如何在不重新加载浏览器的情况下从控制器获取参数
- 仅重新加载网页的一部分
- 每次提交表单时都会重新加载网页
- django模板没有在AJAX发布后重新加载
- 页面在我的javascript执行后重新加载,我不希望它这样做
- 如何通过ajax增加/减少PHP变量值并重新加载函数
- 如何在ReactJs中渲染子组件时重新加载子组件的数据
- 在模板中重新加载嵌入的javascript(Grails)
- 在web应用程序中的新搜索中重新加载搜索结果(不带jQuery)
- 如何在页面重新加载时显示jquery ui对话框
- 重新加载页面时Javascript变量发生变化
- 如何在不重新加载的情况下提交表单,并使用Node+Express将数据传递回同一页面
- 如何在浏览器重新加载时保存位置哈希状态
- index.html使用webpack开发服务器未重新加载
- 如何重新加载脚本标记
- 单击同一链接时,使Iron Router重新加载页面
- 绘制(重新加载)具有cors=“”的图像;匿名的“;在画布上(javascript)