如何验证Meteor.users集合已准备就绪?检查Meteor.users订阅是否已填充
我有一些代码设置在Meteor(发布0.7.0.1)启动在客户端上运行不正确,因为Meteor.users集合尚未填充。在此代码中,Meteor.users._connection.status().connected
返回true,DDP._allSubscriptionsReady()
返回false,因此Meteor.users.findOne
调用即使返回用户也不会返回任何结果。
Meteor.startup(function() {
Deps.autorun(function() {
var userTracker = PersistentSession.get('userTracker');
var userTrackerMissing = !userTracker;
var anonymousUserMissing = !Meteor.users.findOne({"_id": userTracker});
if (Meteor.users._connection.status().connected) {
if (DDP._allSubscriptionsReady()) {
if (userTrackerMissing || anonymousUserMissing) {
Meteor.loginAnonymously();
}
}
}
});
});
您的问题是? –
我修改了这个问题就更清楚了。 – MHinton