铁路由器不等待订阅

时间:2013-10-24 12:24:10

标签: meteor

我的路由器功能定义如下

  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的含义。预期的结果是数据部分只被调用一次,并且在所有订阅都已经“完成”后被调用

1 个答案:

答案 0 :(得分:4)

尝试

waitOn: [personsSub, tenantsSub, teamsSub];

我不确定是否需要功能/返回。