我的路由器功能的定義如下鐵路由器不等待認購
this.route('time', {
template: "app",
yieldTemplates: { 'appNav': {to: 'top'}, 'time': {to: 'appPage'} },
data: function() {
console.log("data is ready for time " + (personsSub.ready() && tenantsSub.ready() && teamsSub.ready()));
return {
dataReady: personsSub.ready() && tenantsSub.ready() && teamsSub.ready()
}
},
waitOn: function(){
return [personsSub, tenantsSub, teamsSub];
}
});
3分的訂閱:
var personsSub = Meteor.subscribe("allPersons");
var tenantsSub = Meteor.subscribe("allTenants");
var teamsSub = Meteor.subscribe("allTeams");
在控制檯中我可以看到2個條目,當我瀏覽這個路線
data is ready for time false
data is ready for time true
我明顯不明白waitOn的意思。預期的結果是,該數據部分只調用一次,它被稱爲所有訂閱後'ready'
什麼版本的鐵路路由器? [你的代碼應該在0.9下工作](https://github.com/EventedMind/iron-router/blob/0.9/DOCS.md#waiting-on-subscriptions-waiton)。 –
它的工作原理,只是數據函數被調用了3次 –