2
我做了一個負載功能的basemodel,定義如下:Angularjs承諾此引用窗口
BaseModel.prototype.load = function(id) {
var deferred = $q.defer();
var self = this;
Db.getById(this.getTableName(), id).then(function(data) {
deferred.resolve(new BaseModel(data));
//self has a reference to window here
}, function(err) {
deferred.reject(null);
});
return deferred.promise;
};
在我的孩子類,從這個basemodel IM派生與調用它:
return BaseModel.prototype.load.call(this, id);
但在承諾的'成功'部分,'var'自我有一個對窗口的引用......是否可以保留對我的對象的引用,如果可以,怎麼辦?我找不到這樣的例子。
在此先感謝!