this.userId 在通过 DDP 调用的方法中未定义
this.userId undefined in method called via DDP
此 Meteor 服务器无法获取从远程 DDP.call 调用的方法中的 userId。如何从远程 DDP 获取调用该方法的 userId?谢谢
//app 1 server
let app2_Conn = DDP.connect('http://localhost:4000');
Meteor.methods ({
'callOut': () => {
app2_Conn.call('app2_method', args);
}
});
//app 2 server
Meteor.methods ({
'app2_method': () => {
const id = Meteor.userId(); //null
const iD = this.userId; //undefined
}
});
因为你使用了箭头函数。箭头函数改变了 this 的绑定方式。
更改为:
Meteor.methods({
'app2_method'() {
const id = this.userId;
}
});
此 Meteor 服务器无法获取从远程 DDP.call 调用的方法中的 userId。如何从远程 DDP 获取调用该方法的 userId?谢谢
//app 1 server
let app2_Conn = DDP.connect('http://localhost:4000');
Meteor.methods ({
'callOut': () => {
app2_Conn.call('app2_method', args);
}
});
//app 2 server
Meteor.methods ({
'app2_method': () => {
const id = Meteor.userId(); //null
const iD = this.userId; //undefined
}
});
因为你使用了箭头函数。箭头函数改变了 this 的绑定方式。
更改为:
Meteor.methods({
'app2_method'() {
const id = this.userId;
}
});