Vorlagenhelfer sind reaktiv, was bedeutet, dass sie sich selbst aktualisieren, wenn sich der App-Status ändert oder neue Daten erscheinen. In Ihrem Fall wird der Helfer sofort aufgerufen, wenn das Template gerendert wird und vor Meteor.users
Sammlung ist gefüllt. Daher die .findOne()
Die Methode gibt undefiniert zurück. Es wird im zweiten Durchlauf korrigiert, nachdem neue Daten eintreffen.
Die einfache Lösung besteht darin, zu überprüfen, ob die Daten im Helfer vorhanden sind:
myClub: function(){
var currenUserId = Meteor.userId();
var user = Meteor.users.findOne({_id: currenUserId});
if(!user) return 'NO DATA';
return user.role;
},
Im wirklichen Leben möchten Sie wahrscheinlich warten, bis die grundlegenden Daten geladen sind, bevor Sie die Vorlage rendern. Dies geschieht normalerweise auf Controller-Ebene.