我正在处理以下情况。
我必须使用类中的方法,但我也必须调用回调...
查看代码,我创建了 _this
var,因为我不知道如何从匿名函数内部访问 DeviceAnalyzer
实例...
还有别的办法吗?我觉得我做的方式有点恶心哈哈
DeviceAnalyzer.prototype.pingProcess = function(deviceInfo, callback) {
var _this = this;
netutils.ping(host.ipAddress, function(isAlive) {
deviceInfo.isAlive = isAlive
_this.emit('device', deviceInfo);
callback(null, deviceInfo);
});
};
最佳答案
使用 ES6 和匿名函数,您不必设置或绑定(bind)它。
DeviceAnalyzer.prototype.pingProcess = function(deviceInfo, callback) {
netutils.ping(host.ipAddress, (isAlive) => {
deviceInfo.isAlive = isAlive
this.emit('device', deviceInfo);
callback(null, deviceInfo);
});
};
关于javascript - 如何从匿名函数访问对象实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34791718/