Javascript 如何通过良好的练习来写作?

Javascript 如何通过良好的练习来写作?,javascript,angularjs,chart.js,Javascript,Angularjs,Chart.js,我正在尝试使用chart.js创建图表,我希望从后端将数据获取到图表,但首先我需要调用控制器中存在的函数。我正在尝试从index.html调用此函数 索引: var ctx = document.getElementById("myChart"); var myChart = new Chart(ctx, { type: 'line', data: { labels: $scope.getChartLabels(), datasets: [{

我正在尝试使用chart.js创建图表,我希望从后端将数据获取到图表,但首先我需要调用控制器中存在的函数。我正在尝试从index.html调用此函数

索引:

var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
    type: 'line',
    data: {
        labels: $scope.getChartLabels(),
        datasets: [{
            label: '# of Votes',
            data: $scope.getChartData(),
            backgroundColor: [
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1
        }]
    },
    options: {
        responsive: true,
        scales: {
            yAxes: [{
                ticks: {
                    beginAtZero:true
                }
            }]
        }
    }
});
(...)

.controller('DashboardController', function ($scope) {
    $scope.getChartLabels = function() {
        return ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"];
    }

    $scope.getChartData = function() {
        return [12, 19, 3, 5, 2, 3];
    }
}

(...)
控制器:

var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
    type: 'line',
    data: {
        labels: $scope.getChartLabels(),
        datasets: [{
            label: '# of Votes',
            data: $scope.getChartData(),
            backgroundColor: [
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1
        }]
    },
    options: {
        responsive: true,
        scales: {
            yAxes: [{
                ticks: {
                    beginAtZero:true
                }
            }]
        }
    }
});
(...)

.controller('DashboardController', function ($scope) {
    $scope.getChartLabels = function() {
        return ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"];
    }

    $scope.getChartData = function() {
        return [12, 19, 3, 5, 2, 3];
    }
}

(...)

如何从index.html中调用角度函数getChartLabels()或getChartData(),而不存在错误做法?

理想情况下,您应该执行其他操作,并调用javascript方法通过angularJs绘制图表

.controller('DashboardController', function ($scope) {
    $scope.getChartLabels = function() {
        return ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"];
    }

    $scope.getChartData = function() {
        return [12, 19, 3, 5, 2, 3];
     }

    drawCharts($scope.getChartLabels,$scope.getChartData);
}

    function drawCharts(d1,d2){
      // draw charts here.
    }

你的代码正确吗?那么网站对你的问题来说会更好是的,一切都很好。大家都同意,angular的工作应该是构建和维护你的用户界面,而不是相反。