客戶端訂閱服務器願意發送給他們的內容。
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