2015-12-22 15 views
1

我尝试使用limit : count与流星的变换观测器,并不明白如何做到这一点没有“脏”的解决方案。转换发布MeteorJS显示计数

代码我有客户端(不是全部,但主要部分)

var self = this; 
self.autorun(function() { 
    self.subscribe('posts', Session.get('count')); // some Number like 10 
}); // client 

而且在服务器上,我尝试使用它

Meteor.publish('posts', function(count){ 
    check(count, Number); 
    let i = 0; 
    var transform = function(doc) { 
     console.log(i,count); 
     if (i < count){ // I try something here 
      doc.description = new Date(); 
      i++; 
      return doc; 
     } 
     else self.ready(); 
    } 

    var self = this; 

    var observer = Posts.find().observe({ 
     added: function (document) { 
      self.added('posts', document._id, transform(document)); 
     }, 
     changed: function (newDocument, oldDocument) { 
      self.changed('posts', document._id, transform(newDocument)); 
     }, 
     removed: function (oldDocument) { 
      self.removed('posts', oldDocument._id); 
     } 
    }); 

    self.onStop(function() { 
     observer.stop(); 
    }); 

    self.ready(); 
}); 

任何想法如何限制与显示的文件数在发布中转换?

回答

0

只需在您的查询中使用Posts.find({},{limit:count})即可。

+0

对不起,我是白痴 –