流星反应变换

时间:2015-12-10 21:56:01

标签: meteor

我正在开发一款移动应用,我正在改造其中一个系列,以吸引用户上次看到的时间,头像等。

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但是后来看到了用户,那么我的字符串返回没有更新......显然。

您如何建议我处理这种情况?

1 个答案:

答案 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");
相关问题