模板请求......
if (this.userRequesting._id === Meteor.user()._id) { ... }
...检查一个人的身份。 (我怀疑这不是解决这个问题的最佳方法,但我会将其保存为另一个问题,以免超载这个问题。)
我的问题是,这导致了一个巨大的错误级联,表明Meteor.user()
未定义,仅页面加载...一旦页面加载,此代码执行没有问题。很明显,有一个计时漏洞(或者我相信),其中Meteor.user()
在页面加载时保持未分配状态。用......替换上面的代码。
____________
if (Meteor.user() && this.userRequesting._id == Meteor.user()._id) { ... }
...修复了问题,但是......来 on ...那不可能是犹太教徒。我错误地对模板和流星做出了什么假设?
如果相关,我使用accounts-password
作为我的作弊客户经理。
[编辑]:这看起来像是same problem,但我要留下这个问题的前提是我正在寻找修复,而不是解决方法。 (我已经知道检查Meteor.user()
会解决这个问题。)
答案 0 :(得分:1)
alert
方法中放置rendered
,你会注意到这一点)。最好的解决方案正是您的建议,尽管您可以使用Meteor.userId()
来获取ID:
if (Meteor.userId() && Meteor.userId() === this.userRequesting._id) {
// ...
答案 1 :(得分:0)
如果用户未登录,您可以使用Meteor.userId()
获取已登录用户的_id
属性或null
(我认为)。