如何限制客户端仅查看最新的100条记录?

时间:2013-06-30 17:57:36

标签: meteor

我有一个名为server/publications.js的文件,其中包含以下内容:

var MAX_RESULTS = 100;

Meteor.publish('messages', function () {
  var count = Messages.find().count();
  if (count > MAX_RESULTS) {
    return Messages.find({}, {sort: {submitted: 1}, skip: count - MAX_RESULTS});
  } else {
    return Messages.find();
  }
});

一个名为client/main.js的文件,其中包含:

Meteor.subscribe('messages');

在我的模板助手中,我只需拨打Messages.find()即可。此技术的工作原理是,客户端仅在开始时为提供最新的100个结果。然而,随着每个新记录,客户看到越来越多。

如何才能使客户看到最新的100个结果?

1 个答案:

答案 0 :(得分:2)

使用limit

Messages.find({}, {sort: {submitted: 1},
                   skip: count - MAX_RESULTS, 
                   limit: MAX_RESULTS
});