2016-12-10 29 views
0

我发布的用户数据在服务器包括出生场的日期流星使用额外字段发布

Meteor.publish('sharedUserData', function(uId) { 
    return Meteor.users.find(uId, { 
    fields: {'dateOfBirth': 1} 
    }); 
}) 

我想在服务器计算“时代”(例如年龄= 30),它本出版物中返回给客户机。我怎样才能实现它?谢谢!

回答

0

你可以做,通过提供transform选项给find方法:

Meteor.publish('sharedUserData', function(uid) { 
    return Meteor.users.find({ 
    _id: uid, 
    }, { 
    fields: { 
     dob: 1 
    }, 
    transform(doc) { 
     const { 
     dob, 
     } = doc; 

     doc.age = calculateAge(dob); 

     return doc; 
    }, 
    }); 
}); 
+0

谢谢!这似乎是我需要的,但问题是我不能运行这种转换方法(我使用的代码,但转换没有被称为发布时) 从另一方面,我定义了_transform Meteor.users方法,它工作得很好。 –