Meteor documentation明确指出在发布功能中不允许使用Meteor.userId()
,并且this.userId
应该在其中使用Meteor.publish("users.currentUser", function(){
const currentId = Meteor.userId();
return Meteor.users.find({_id: currentId}, {
fields: { services: 1, username: 1, emails: 1, roles: 1, details: 1}
});
})
。
我依旧记得在意外做这件事时看到过警告或错误。
我经常使用共享代码,该共享代码既用于验证订阅中的权限,也用于在助手中确定是否应该将某个元素实际显示给某个用户类型。
这使得这种方法非常烦人。偶然我今天在以下出版物中使用了Meteor.userId(),没有任何问题。
此限制是否已被删除?如果是这样,是否有任何与之相关的文档,因为文档尚未更新。
我正在使用Meteor 1.5.2.2。
示例出版物就是这个......
destory
答案 0 :(得分:4)
自1.5.1以来you can use Meteor.userId()
and Meteor.user()
in publications。好像文档还没有更新。