同一个控制器中的两个范围(一个来自服务)到一个指令有什么区别?

时间:2016-04-08 01:10:56

标签: angularjs angularjs-directive angularjs-scope

我有以下控制器有两个范围变量,只有一个传递给我的指令?

reve = rev("hello") # is an iterable, as there is rev.__iter__()
rev1 = iter(reve)   # is an iterator, this is what rev.__iter__() returns
rev2 = next(rev1)   # now go on calling next() till you get StopIteration

我有一个接受一个范围但不接受另一个范围的指令吗?

这有效

.controller('newsController', ['$scope', 'gasPrices',
                                  function($scope, gasPrices) { 

  gasPrices.success(function(data) {
    $scope.gasFeed = data.series[0];    
  });

  $scope.myData02 = [2.095,2.079,2.036,1.988,1.882,1.817,1.767,1.747];

}])
;

这不是

<line-chart chart-data="myData02"></line-chart>

你知道为什么吗?

3 个答案:

答案 0 :(得分:0)

您必须延迟实例化指令,直到异步服务中的数据可用。类似的东西:

<line-chart ng-if="gasFeed" chart-data="gasFeed"></line-chart>

在gasFeed scope属性有数据之前,不应该实例化该指令。

答案 1 :(得分:0)

试试这个:

path

答案 2 :(得分:0)

是。

在这里,在您的示例中,只有当服务成功回调时才能访问$output = array(); array_walk($result, function ($value, $key) use (&$output) { // here the $value is the single array you are looking for. $output[] = $value; }); print_r($output); 范围。因此,在此之前将加载gasFeed范围。

如果您想同时访问这两个。然后尝试

myData02