meteor - 在登录时发布所有用户数据

标签 meteor

我已将一个附加字段附加到我的 Meteor.users 集合中。这是一条信息,用于确定用户在注册过程中所处的阶段。我想在 onLogin 上发布它,但是我下面的代码不起作用,我不确定为什么。如有任何帮助,我们将不胜感激。

路径:imports/startup/server/onlogin.js

Accounts.onLogin(function(user){
  Meteor.publish('userdata', function () {
    return Meteor.users.find({ _id: user.user._id }, {
      fields: { myUniqueField: 1 }
    });
  });
});

最佳答案

在服务器上,发布不应在事件处理程序 (onLogin) 的回调中运行。 this.userId 将为您提供当前登录用户的 _id

Meteor.publish('userdata', function() {
  return Meteor.users.find(this.userId, {
    fields: { myUniqueField: 1 }
  });
});

关于meteor - 在登录时发布所有用户数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47746774/

相关文章:

javascript - Meteor:如何使用空格键创建包含来自两个集合的数据的树列表?

javascript - 在 mongodb 更新中使用变量

javascript - MeteorJS 和 IoT 空间

javascript - 禁用 meteor 注册

javascript - Meteor Template 助手和 Handlebars 助手之间有什么区别?

javascript - 为什么 Meteor Collection 没有反应性行为?

如果未选择 Meteor 用户帐户,请记住我然后在浏览器关闭时注销?

javascript - 添加 account-ui 包后,Meteor 模板被创建两次

meteor - 有原生FB登录的工作包吗?

javascript - 在 meteor 客户端上查找不起作用