¿No se puede leer el "perfil" de properties indefinido en la function meteor.JS?

Tengo el siguiente código:

Template.analyze.userFullName = function() { var u = Meteor.users.findOne({_id: this.userId}, {fields: {name: 1}}); return u.profile.name; }; 

Meteor.users.findOne({_id: this.userId}, {fields: {name: 1}}) devuelve lo siguiente cuando se usa en la console:

 Object _id: "79ef0e67-6611-4747-b669-45cc163cc1d8" profile: Object name: "My Name" 

Pero cuando lo uso en el código anterior obtengo esto: Uncaught TypeError: Cannot read property 'profile' of undefined

¿Por qué está pasando esto? Todo lo que quiero hacer es recuperar el nombre completo del usuario en su perfil y pasarlo a una parte de la plantilla.

La Plantilla se muestra de forma inmediata en la carga de la página cuando el usuario aún no está disponible, lo que está causando un error. Afortunadamente, ya que está utilizando la colección de usuarios, que es reactiva, puede hacer que vuelva a aparecer cuando esté disponible. Para ello, primero verifica si el object no es nulo:

 Template.analyze.userFullName = function() { // use Meteor.user() since it's available if (Meteor.user()) return Meteor.user().profile.name; }; 

De esta forma, cuando el usuario es nulo (durante la carga) la plantilla no lanzará un error. Inmediatamente después de que los datos estén disponibles, la reactividad invocará nuevamente la plantilla, y se representará en la pantalla.