我正在开发一款移动应用,我正在改造其中一个系列,以吸引用户上次看到的时间,头像等。
PlayerRecord.prototype = {
constructor : PlayerRecord,
getAssociatedUser: function () {
return Meteor.users.findOne( this.user_id );
},
lastSeenFormatted: function () {
var user = this.getAssociatedUser();
return (user && user.last_seen) ? user.last_seen : 'Never';
}
}
我的问题是,如果用户上次看到最初返回Never
但是后来看到了用户,那么我的字符串返回没有更新......显然。
您如何建议我处理这种情况?
答案 0 :(得分:0)
您是否检查过任何用户是否拥有last_seen的值?必须明确发布此字段。 根据Meteor文档(http://docs.meteor.com/#/full/meteor_user):
默认情况下,当前用户的用户名,电子邮件和个人资料均为 发布给客户。您可以发布其他字段 当前用户:
// server
Meteor.publish("userData", function () {
if (this.userId) {
return Meteor.users.find({_id: this.userId},
{fields: {'last_seen': 1}});
} else {
this.ready();
}
});
// client
Meteor.subscribe("userData");