我正在使用Meteor编写聊天程序。我需要按升序显示10条最新消息。
Messages.find({...}, {sort: {created: 1}, skip: getMessageCount()-10, limit: 10});
此代码仅显示前10条消息。
跳过参数是否在Meteor中有效且我犯了错误,或者是否有任何已知的错误?
答案 0 :(得分:2)
它返回前10条消息的原因是:{sort: {created: 1}}
,它以值created
属性的升序返回。
你应该写{sort: {created: -1}}
,即。将首先返回值为created
的记录。
此外,假设created
带有有效的日期值以及时间戳,您应该插入其parsed
值,以便根据日期有效地执行排序。
答案 1 :(得分:1)
您只需要在服务器上形成
Messages.find({...}, {sort: {created: -1}, limit: 10});
然后在客户端上
Messages.find({...}, {sort: {created: 1}})
这将发生什么: