如果我有以下代码。我是唯一可以使用this
变量访问函数内部self
的方法,还是可以通过其他方式访问函数内的this
?
app.controller('ChildCtrl', function($scope, _o) {
var self=this;
this.option = {};
this.option.abc = 25;
$q.all([_o.getUserProfiles(),
_u.getConfigs()
])
.then(function (results) {
???.option.userProfiles = results[0].userProfiles;
});
答案 0 :(得分:5)
您可以使用bind。可能这对你来说会更舒适。
app.controller('ChildCtrl', function($scope, _o) {
this.option = {};
this.option.abc = 25;
$q.all([_o.getUserProfiles(),
_u.getConfigs()
])
.then(function (results) {
this.option.userProfiles = results[0].userProfiles;
}.bind(this));
有关bind的更多信息,请参阅此处:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind