1
我有一個名爲server/publications.js
具有下列文件:如何限制客戶只能看到最新的100條記錄?
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個結果?
嗯,嘗試這種它似乎是現在,當我嘗試插入一個消息,客戶永遠不會收到它。但是,如果我刷新它的工作頁面。有沒有更好的方法來獲得*最後* 100消息? –
你可以刪除'skip'並使用'sort:{submitted:-1}' – Akshat
這可能是一個好主意。但是我需要按照這種方式對消息進行排序,以便頁面以正確的順序渲染它們。有沒有辦法扭轉「{{#each}}」? –