我的情况是,我需要从多个订阅中获取完整数据,然后我的应用才能正常运行。在 jQuery/Backbone.js 上下文中,我会做这样的事情:
var sub1 = Meteor.subscribe('foo'),
sub2 = Meteor.subscribe('bar');
$.when(sub1, sub2, function(){
// do things
});
但我认为这不是流星方式......(?)我可以做这样的事情
Meteor.subscribe('foo', function(){
Meteor.subscribe('bar', function(){
// do things
});
});
但这很快就会变得一团糟。可能有某种帮助/模式可以做到这一点,我只是不知道......
注意 - 我正在使用出色的铁路由器,并且也尝试过这个:
this.route('baz', {
// code ...
'before' : [
function(){
this.subscribe('foo').wait();
},
function(){
this.subscribe('bar').wait();
}
],
// more code ..
});
但这似乎并不能阻止下游代码运行,因此不能解决我的问题......