【发布时间】:2015-04-01 14:02:52
【问题描述】:
我有一个简单的表单,提交时会将数据输入到流星 mongo 集合中。然后我将刚刚提交的数据输出到另一个 div 中,有点像提交的推文并在时间轴中显示。
我想将用户提交表单时的时间戳存储到集合中,然后显示按时间戳降序排列的“提要”,因此最新的在前。我目前正在使用 moment.js 记录集合中的时间戳,然后简单地在输出中使用该时间戳,但这似乎不是最有效的方法。
我打算让不同时区的用户提交表单,因此希望能够显示以 UTC 格式提交的时间戳,按最新排序。
目前我有...
Template.form.events({
'submit form': function(e) {
e.preventDefault();
var insertPost = {
timestamp: moment().format('DD-MM-YY HH:mm:ss ZZ')
// some other stuff as well
};
form._id = Posts.insert(insertPost);
)};
然后这将显示在我的 post_item.html 中:
<template name="post-item">
<div>
<ul class="list-inline">
<li><small>{{timestamp}}</small></li>
// some other stuff too
</ul>
</div>
</template>
这种存储时间戳的方式可以吗?我觉得以毫秒为单位存储它可能会更好,然后在输出中对其进行格式化。
所以我可以更改我的 form.events 代码来存储
timestamp: moment.utc().valueOf(),
自纪元以来以毫秒为单位存储,但我如何在 html 模板中转换它以显示格式良好的时间戳?
【问题讨论】:
-
以毫秒为单位的时间总是首选,因为它更通用和基本
标签: javascript meteor momentjs