我需要以“mm-dd-yyyy”格式显示数据库中的日期。由于它在mongodb
中以ISO格式保存,如何在模板中进行转换?
这是我的代码。
Template.templatename.vname = function () {
return Posts.find();
}
在模板中
{{#each vname}}
{{ date }}
{{/each}}
现在它显示为Tue Feb 04 2014 00:00:00 GMT+0530 (IST)
我需要将其显示为mm-dd-yyyy
答案 0 :(得分:69)
您可能想要创建一个全局帮助器,如:
Template.registerHelper('formatDate', function(date) {
return moment(date).format('MM-DD-YYYY');
});
然后你就可以使用它:
{{#each vname}}
{{formatDate date}}
{{/each}}
此解决方案依赖于moment,它是一个方便的日期操作库。如果您希望不使用片刻而生成字符串,可以使用this one来解决此问题。
答案 1 :(得分:6)
时刻是一个问候lib
meteor add momentjs:moment
在助手中使用时刻
Template.home.helpers({
momentFormate: function(time) {
if ((moment().unix() - moment(time).unix()) < 3600) {
return moment(time).fromNow();
} else {
return moment(time).format("YYYY-MM-DD HH:mm");
}
},
})
答案 2 :(得分:2)
这是一个在Meteor中运行的解决方案,不依赖于另一个包:
// global helper
Template.registerHelper('formatDate', function(date) {
return monthNames[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear();
});
这将返回格式为&#34; 2015年12月11日和#34;的日期字符串。移动getMonth()
,getDate()
和getFullYear()
作为首选格式。有关更多格式选项,请查看Date object的其他方法。