AngularJS资源承诺

前端之家收集整理的这篇文章主要介绍了AngularJS资源承诺前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个使用$ resource的简单控制器:
var Regions = $resource('mocks/regions.json');

 $scope.regions = Regions.query();

我在一个指令中使用这个控制器(在链接功能)

var regions = scope.regions;

但区域是未定义的。这是非常逻辑的调用是异步的。

我的问题是我怎么可以等待结果和地区是一个数组的所有数据?

UPDATE :

这里是指令的定义

app.directive('ngMap',function() {
  return {
    restrict: 'EA',replace: 'true',scope: {

    },template: '<div id="map"></div>',controller: 'AccordMapCtrl',link: function(scope,element,attrs) {
      var regions = scope.regions;
      console.log(regions);

      for (var region in regions) {}
    };
  });
如果你想使用异步方法,你需要使用$ promise的回调函数,这里是例子:
var Regions = $resource('mocks/regions.json');

$scope.regions = Regions.query();
$scope.regions.$promise.then(function (result) {
    $scope.regions = result;
});

猜你在找的Angularjs相关文章