访问数据时未定义Meteor用户

时间:2014-11-26 17:35:13

标签: javascript meteor

编辑:问题已经解决了。我最近更改了导致电子邮件不会发布到客户端的发布规则。

我遇到了问题:我正在尝试在表单提交时发送通知电子邮件。这是代码

var fl = Meteor.users.find({_id:owner});
console.log(fl);

var email = fl.emails[0].address;
var html = Blaze.toHTMLWithData(Template.new_assigned_task_email);
Meteor.call('sendEmail',
      email,
      "email@email.com",
      "You have a new task offer!",
      html);

变量所有者是用户ID。 console.log(owner)返回正确的id,console.log(fl)返回用户对象。但是,calling fl.emails[0].address给了我“TypeError:undefined不是一个对象(评估'fl.emails [0]')”错误。

有什么我想念的吗?

1 个答案:

答案 0 :(得分:1)

Meteor.users.find返回cursor,您需要将用户检索为js对象。

尝试:

var fl = Meteor.users.findOne({_id:owner});
// OR
var fl = Meteor.users.findOne(owner) 

console.log(fl);