所以我开始在 ES6 中使用 ES6 Meteor
,但显然如果您尝试使用Meteor.publish
带有箭头函数的语法,this.userId
则未定义,而如果您将其与常规function(){}
this.userId
作品一起使用,则可以完美地工作,我假设是一种分配不同 this 的转译器过程userId
但只是一个猜测,有谁知道到底发生了什么?
Meteor.startup(function() {
Meteor.publish("Activities", function() { //with function
console.log(this.userId); //TS8vTE3z56LLcaCb5
});
});
Meteor.startup(function() {
Meteor.publish("Activities", ()=> { //with arrow function
console.log(this.userId); //undefined
});
});