【发布时间】:2016-04-19 01:53:38
【问题描述】:
我有这个帮手
myClub: function(){
var currentUserId = Meteor.userId();
var user = Meteor.users.findOne({_id: currentUserId});
return user;
}
我希望它返回 user.role
这是我在 MongoDB 中的用户
{
"_id" : "RdirmrLG3t8qBk4js",
"createdAt" : ISODate("2016-04-17T19:40:56.877Z"),
"services" : {
"password" : {
"bcrypt" : "$2a$10$cPe92XR9DT238bH/RanYEu.J6K2ImvAEbWOcVq6j9luI0BH08Qdly"
},
"resume" : {
"loginTokens" : [
{
"when" : ISODate("2016-04-17T19:51:49.474Z"),
"hashedToken" : "uVKUj/7JEkkOuizXhjl212Z38E47HXCex+D4zRikQ1k="
}
]
}
},
"username" : "worker",
"role" : "worker",
"club" : "hzSKAJfPXo7hSpTYS"
}
上面的代码运行良好。因此它会找到当前用户并输出有关它的信息。但是当我将用户更改为 user.role 时,我收到以下错误消息。
TypeError:无法读取未定义的属性“角色” 在 Object.myClub
它怎么可能是未定义的?我的语法不正确吗?
【问题讨论】:
-
我现在可以设法输出或检查用户的用户名,但不能检查角色。但它是否与结构有关。当我运行 Meteor.users.find().fetch();在控制台中,我得到了这个 >Object id :"RdirmrLG3t8qBk4js" username :"worker" >__proto__:Object 因此,可以使用 user.username 检索用户名似乎是合乎逻辑的。但角色不在一个级别。我什至找不到在结构中的作用。为什么以及在哪里可以找到它?