Dieser Meteor-Server-Code versucht Meteor.userId() in öffentlicher Methode „sendemail“, zu verwenden, aber manchmal habe ich den Fehlerkorrekte Verwendung von Meteor.userId()
Fehler Meteor.userId kann nur geltend gemacht werden, in Methodenaufrufen. Verwenden this.userId
lib = (function() {
return Object.freeze({
'sendEmail': function(msg){
let userId = Meteor.userId();
//do stuff for this user
},
'otherPublicMethod': function(){
//do other things then use sendEmail
lib.sendEmail(); // <---- Error Meteor.userId can only be invoked in method calls. Use this.userId
}
});
}());
// Now I call sendEmail from any where, or can I?
Meteor.methods({
'sendEmail': (msg) => {
lib.sendEmail(msg); // <---- NO error when this is called
},
});
Wie es behoben werden kann? thx
'userId()' darf nicht in 'Publications' verwendet werden, aber es gibt keine Einschränkung, es innerhalb' Methods' zu verwenden. –