Javascript 如何添加临时值。流星场

Javascript 如何添加临时值。流星场,javascript,meteor,Javascript,Meteor,有没有办法在发布函数中的服务器上添加临时额外字段?我似乎无法投入工作 我对同一集合“清单”有两个订阅。有时我想订阅某些列表,以便可以在聊天室列表中使用它们。。。但问题是它们出现在我的“列表”模板中。唯一的部分是服务器上的性能(大型阵列) 理想情况下,我希望我可以添加一个额外的字段,如“forChat:true”,这样我就可以在列表模板中检查它,并且只拉入没有“forChat”字段的列表 目前,我通过在每个列表中发送“喜欢的”和“不喜欢的”数组来绕过它,这样列表模板就可以检查用户的id是否在其中。

有没有办法在发布函数中的服务器上添加临时额外字段?我似乎无法投入工作

我对同一集合“清单”有两个订阅。有时我想订阅某些列表,以便可以在聊天室列表中使用它们。。。但问题是它们出现在我的“列表”模板中。唯一的部分是服务器上的性能(大型阵列)

理想情况下,我希望我可以添加一个额外的字段,如“forChat:true”,这样我就可以在列表模板中检查它,并且只拉入没有“forChat”字段的列表

目前,我通过在每个列表中发送“喜欢的”和“不喜欢的”数组来绕过它,这样列表模板就可以检查用户的id是否在其中。然而,由于长度~=(用户数/2),这将不能很好地随时间(以及在移动设备上)扩展

这可能吗?有点骇人,但我想我可以将该字段添加到每个列表中,并在其他出版物中省略它

以下接受答案的工作代码:

Meteor.publish('listingsForChats', function(id) {
    var cursor = Listings.find(...);

    // insert a temp `forChats:true` field to filter in listings template
    cursor.forEach(function(doc) {
      doc.forChats = true;
      this.added('listings', doc._id, doc);
    }, this);

    this.ready(); 
});

是的,这是可能的。请看我的回答:


基本上可以归结为meteor文档中发布的扩展示例:。

谢谢!!太好了。我已经为将来的读者添加了上面的工作代码。
Meteor.publish('listingsForChats', function(id) {
    var cursor = Listings.find(...);

    // insert a temp `forChats:true` field to filter in listings template
    cursor.forEach(function(doc) {
      doc.forChats = true;
      this.added('listings', doc._id, doc);
    }, this);

    this.ready(); 
});