Javascript 每当我在meteor angular中刷新页面时,`meteor.user()`方法返回undefined

Javascript 每当我在meteor angular中刷新页面时,`meteor.user()`方法返回undefined,javascript,angular,meteor,angular-meteor,Javascript,Angular,Meteor,Angular Meteor,我正在使用帐户-password@1.4.0我的Meteor angular项目中的软件包 Meteor.user()方法返回当前用户的详细信息,但当我刷新页面时,它返回未定义的。 那么我们有没有办法消除这个错误呢?任何帮助都将不胜感激 Meteor.autorun(function () { vm.loggedInUser = Meteor.user(); }); 它工作正常,但当我重新加载页面时,它返回undefined Meteor.autorun(function () { v

我正在使用
帐户-password@1.4.0
我的Meteor angular项目中的软件包

Meteor.user()
方法返回当前用户的详细信息,但当我刷新页面时,它返回
未定义的
。 那么我们有没有办法消除这个错误呢?任何帮助都将不胜感激

Meteor.autorun(function () {
  vm.loggedInUser = Meteor.user();
});
它工作正常,但当我重新加载页面时,它返回
undefined

Meteor.autorun(function () {
  vm.loggedInUser = Meteor.user();
  console.log("loggedInUser", vm.loggedInUser); // undefined
});

刷新页面时,
Meteor.user()
将在几个周期内未定义,直到其数据通过websocket/ddp从服务器重新传输到客户端。它最终将被定义并拥有正确的数据。像内置Meteor这样的单页应用程序通常不需要页面刷新,但必须处理用户手动刷新的情况。典型的解决方案是显示加载微调器,直到订阅和用户数据准备就绪


而且是Tracker.autorun()而不是Meteor.autorun()

你的问题太广泛了。您应该添加更多信息和/或代码,以便我们能够理解您的问题。我已经用更多信息改进了我的问题。它可能会帮助你你的意思是
Tracker.autorun
,对吗?我正在使用meteor+angularIt从一个路由切换到另一个路由时从服务器检索数据。你是如何切换路由的?您是否正在单击应用程序中的链接?或者在浏览器中键入新的url?在前一种情况下,
Meteor.user()
应该保持可用,而在第二种情况下,它与执行真正的页面刷新相同。