客户端订阅服务器愿意发送给他们的内容。
if(Meteor.isClient){
Meteor.subscribe("parties");
}
服务器过滤客户端不应该拥有的数据,通常出于安全原因。你不希望密码或私人信息被发布。任何客户端都可以打开控制台并浏览发布给他们的完整数据集。
if(Meteor.isServer){
Meteor.publish("parties", function(){
return Parties.find({date: {$gt: Date.now()}});
});
}
如果你希望客户能够看到双方当事人已到期和未到期的当事人,你会从服务器发布整套,然后在模板助手过滤它在客户端上。
if(Meteor.isServer){
Meteor.publish("parties", function(){
return Parties.find();
});
}
if(Meteor.isClient){
Meteor.subscribe("parties");
Template.templateName.allParties = function(){
return Parties.find();
}
Template.templateName.activeParties = function(){
return Parties.find({date: {$gt: Date.now()}});
}
}
如果不是数据库属性,“派对的日期”是什么?这听起来像你需要删除'autopublish'并编写你自己的'发布'功能。如果您没有太多数据,您也可以更改模板并继续使用“自动发布”。 – user728291