我怎样才能通过插入时间排序流星收藏?(How can I sort a Meteor collect

2019-07-17 03:22发布

我在我的第一个项目工作使用流星,和时遇到一些困难排序。

我有供用户输入的格言是,然后在列表中显示的形式。 目前最新的警句自动显示在列表的底部。 有一个简单的方法有最近出现在列表,而不是顶部?

我试过了:

   Template.list.aphorisms = function () {
    return Aphorisms.find({}, {sort: {$natural:1}});
};

而且很为难,因为流星文档没有很多的例子。

Answer 1:

假设date_created是一个有效的日期格式时间戳,您应该插入的解析值date_created使用Date.parse() JavaScript函数,这给1970年1月1日,并载于日期值之间的毫秒数date_created

作为一个结果,最近添加的记录将包含的更大的价值date_created比以前插入的记录。

现在获取的记录时,按降序的顺序将光标date_created参数为:

 Aphorisms.find({}, {sort: {date_created: -1}});

这将较旧的较新的记录进行排序。

希望这可以帮助。



Answer 2:

我发现下面是一个清洁的解决方案:

   Template.list.aphorisms = function () {
      return Aphorisms.find().fetch().reverse();
   };

鉴于整个收藏以相反的顺序已经存在,你想,你可以简单地创建的所有对象的数组和反向顺序。



文章来源: How can I sort a Meteor collection by time of insertion?