Meteor.user()不包含电子邮件字段

时间:2015-07-05 05:05:12

标签: javascript meteor

我正在使用account-google,我不知道它为什么不向客户发布电子邮件。

来自Meteor.user()的文档:

  

默认情况下,服务器会发布用户名,电子邮件和个人资料(用户可写)。

我只得到

Object { _id: "vK5ddWtypCewCwbSL", profile: Object }
运行Meteor.user()之后在我的客户端上运行

,但我想使用Meteor.user()。电子邮件,我在这里错过了什么?

1 个答案:

答案 0 :(得分:0)

如果您删除了自动发布模块,则需要手动发布用户集合。

如果您使用的是服务器端发布方法,那么在从服务器发布该字段之前,您将无法获得电子邮件字段。

在服务器端使用以下代码。

Meteor.publish("user",function(){
  return Meteor.users.find(this.userId,{
    fields:{
        "services.google.accessToken":0,
        "services.google.expiresAt":0,
        "services.google.idToken":0,
        "services.resume":0
    }
  });
});

此方法允许您访问客户端的电子邮件字段。