Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在外部javascript函数中使用AngularJs作用域_Javascript_Angularjs - Fatal编程技术网

如何在外部javascript函数中使用AngularJs作用域

如何在外部javascript函数中使用AngularJs作用域,javascript,angularjs,Javascript,Angularjs,我试着用它画一张图表。数据来自我的API,我知道格式是正确的。我不知道如何将从API重新获取的数据传递到javascript函数 在我的控制器中,我得到: $http.get('/api/bilan').then(function(result) { $scope.finances = result.data; }); 下面是我应该传递数据的片段: var bilans = { labels: ["Janvier", "Février", "Mars", "Avril", "Mai",

我试着用它画一张图表。数据来自我的API,我知道格式是正确的。我不知道如何将从API重新获取的数据传递到javascript函数

在我的控制器中,我得到:

$http.get('/api/bilan').then(function(result) {
  $scope.finances = result.data;
});
下面是我应该传递数据的片段:

var bilans = {
  labels: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"],
  datasets : [
    {
      data : [ TheDataFromTheApi ]
    }
  ]

};

我应该在API的数据中输入什么?或者,正确的方法是什么

使用现有库,该库已以angularise方式转换代码

只需包含
angular chartjs.js

然后注入到您的模型
angular.module('myApp',['chart.js'])

之后,您可以将其用作任何您想要的属性

HTML

<canvas class="chart chart-bar" data="bilans.data" labels="bilans.labels" series="bilans.series"></canvas>

对于您的代码。

您应该通过角度控制器将数据传递到图表中


将您的服务($http.get…)调用到控制器中,并将其结果添加到数据中,然后您就可以创建图表。

使用为chart.js编写的Angular指令。如果我设置var financials=result.data并尝试使用data:financials,它将不起作用。我得到的不是钱defined@LucienDubois为您的示例更新了示例代码并更改了库,这比第一个好。我遇到了一个错误:无法读取undefined inangular-chart.js的属性'global'。。哼
var app = angular.module("Bar_Chart", ["chart.js", "ui.bootstrap"]);
app.controller('mainCtrl', function($scope,$http) {
    // you can get this data by ajax
    var TheDataFromTheApi = [1,2,3,4,5,6,7,8,9,10,11,12];
    $scope.bilans = {
      labels: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"],
      data: [TheDataFromTheApi],
      series:["Months"]
    };
});