我有一段代码,我似乎只能在then
内访问。我想在外面访问它,以便我可以在其他地方使用它。
$scope.model = {'first_name':'','last_name':'','email':'',};
djangoAuth.profile().then(function(data){
$scope.model = data;
console.log($scope.model); //this prints the data
});
console.log($scope.model); //this prints empty data
profile
代码是这样的:
'profile': function(){
return this.request({
'method': "GET",
'url': "/user/"
});
}
答案 0 :(得分:1)
那是因为then
是异步的,即使承诺已经解决了。 Angular在调用promise回调之前一直等到timer-tick。
您可以执行范围摘要以强制立即评估,但这会影响性能。