angularjs在同一控制器

时间:2016-03-01 20:59:05

标签: javascript angularjs

function getPort() {
   $http.get($scope.newPort())
   .then(function(res) {
     $scope.scvalues = res.data;

   });
  }


$scope.dataset= [
    {
        "seriesname": $scope.scvalues.DataType,
        "Data": $scope.scvalues.Values.Data
     }];

HTML

<fusioncharts
 width="100%"
 height="600"
 type="zoomline"
 chart="{{attrs}}"
 categories="{{categories}}"
 dataset="{{dataset}}">
 </fusioncharts>

我正在尝试将来自JSON的数字字符串放入此融合图表中,但我无法弄清楚如何从该函数中获取scvalues。我已经尝试返回它,但它打破了函数,我尝试在HTML中使用表达式,但这打破了图表。我知道$ scope.dataset下的代码是错误的,但我只是把它放在那里试图帮助解释我的意图。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

你需要做这样的事情

function getPort() {
            $http.get($scope.newPort())
            .then(function(res) {
                $scope.scvalues = res.data;
                $scope.dataset= [
                {
                    "seriesname": $scope.scvalues.DataType,
                    "Data": $scope.scvalues.Values.Data
                }];
            });
        }

因为您使用的是Promise并且它是异步的。