Javascript 角度,数组复制太晚

Javascript 角度,数组复制太晚,javascript,arrays,angularjs,cordova,Javascript,Arrays,Angularjs,Cordova,我有一个回调函数,用于处理来自服务器响应的数据。 在函数中,我试图用数据结果填充数组。 我正在填充的数组是在一个服务中定义的,该服务来自插入到我的主应用程序模块中的另一个模块。我使用这个方法来访问我所有控制器中的这个数组,某种全局已知数组 angular.module('HighLowTodayApp.services',[]) .factory('HLTglobalData',['$http',函数($http){ globalData.currentDomainsList={}; 返回{

我有一个回调函数,用于处理来自服务器响应的数据。 在函数中,我试图用数据结果填充数组。 我正在填充的数组是在一个服务中定义的,该服务来自插入到我的主应用程序模块中的另一个模块。我使用这个方法来访问我所有控制器中的这个数组,某种全局已知数组

angular.module('HighLowTodayApp.services',[])
.factory('HLTglobalData',['$http',函数($http){
globalData.currentDomainsList={};
返回{
currentDomainsList:globalData.currentDomainsList
}

})所以,处理异步内容的最佳方法是Promise。例如:

```


```

我解决了我的问题-这是由于我的一个错误-我忘记对$location.path(“/showDomainsList”)的调用进行注释;ajax请求上方几行。因此,我的代码更改了路径,然后通过设置成功发出ajax请求,并且控制器的init仅在第一次调用更改路径时才被调用。无论如何,非常感谢。通过此ocasion,我学到了一些新东西-延迟。我在使用$q进行测试后才发现了错误。谢谢
function myService($q){
 var def = $q.defer
 $http().then((data) => def.resolve(data))
 return def
}

function myCtrl($location) {
 myService.then(() => $location.path('/somewhere'))
}