Я использую этот фреймворк для рисования диаграмм с angularjs: http://jtblin.github.io/angular-chart.js/. Я уже искал stackoverflow, но никакие вопросы не могли действительно решить мою проблему.
У меня нет проблем при рисовании диаграмм со статическими данными, дляпример $ scope.data = [50,30,70]
Я хочу, чтобы диаграмма использовала значения, хранящиеся в переменной, вместо этого, и я предположил, что могу просто поместить свои значения в массив и сделать что-то вроде $scope.data = myArray;или поместите мою переменную в массив, как $ scpe.data = [myData];но это не работает, и я понятия не имею, что еще попробовать.Я новичок в angularJS и Chart.js, кстати.
В качестве теста я просто хотел прочитать мой cpuload и поместить его в диаграмму.
Вот мой HTML:
<div style="width:300px; height:300px" ng-controller="BarCtrl">
<canvas id="bar" class="chart chart-bar"
chart-data="data" chart-labels="labels"> chart-series="series"
</canvas>
</div>
Вот мои угловые контроллеры:
app.controller('MonitorController', ['$scope', function ($scope) {
var vm = this;
setInterval(function(){
si.currentLoad(function(data) {
vm.cpuLoad = Math.round(data.currentload);
$scope.$apply();
}); }, 1000);
}])
app.controller("BarCtrl", function ($scope) {
$scope.labels = ['2017'];
$scope.series = ['Series A'];
$scope.data = [50]; });
Я хочу, чтобы $ scope.data использовал значение из vm.cpuLoad.
Кто-нибудь может мне помочь, как это сделать?Вы также можете игнорировать интервал, если хотите.Просто скажите мне, как применить данные из переменной в другом контроллере в этом.
Заранее спасибо.