【发布时间】:2014-01-04 00:50:42
【问题描述】:
在 JavaScript 中,我正在寻找一种在匿名和异步函数上使用 bind() 的方法。
例子:
exports.foo = function () {};
exports.foo.prototype = {
load : function(id) {
var query = new Parse.Query("SomeObject");
query.get(id).then(function(object) {
this.object = object; // this is the wrong this
});
}
};
我通过将函数设为非匿名来实现这一点,但我认为这让我的代码看起来很难看。尤其是在连续使用 4 个不同的匿名函数之后。
exports.foo = function () {};
exports.foo.prototype = {
load : function(id) {
function _load(object) {
this.object = object;
}
var _loadThis = _load.bind(this);
var query = new Parse.Query("SomeObject");
query.get(id).then(_loadThis);
}
};
有没有更好的办法?
【问题讨论】:
标签: javascript mongodb asynchronous parse-platform promise