【问题标题】:Angularjs - Chartjs formattingAngularjs - Chartjs 格式化
【发布时间】:2019-09-22 08:10:00
【问题描述】:

我是 AngularJS 的新手。我使用 Chart.js 和 HTML 创建了一个水平条形图。现在我想添加 AngularJS 以便图表在页面上动态显示。有人可以指导我如何开始吗?谢谢。

HTML:

<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/Chart.js/2.2.2/Chart.min.js"></script>
<canvas id="myChart"></canvas>

JavaScript:

var config = {
      type: 'horizontalBar',
      data: {
        labels: ["A", "B", "C", "D", "E"],
        datasets: [{
          label: "Dataset 1",
          backgroundColor: "rgba(154,178,96,0.5)",
          hoverBackgroundColor: "rgba(154,178,96,1)",
          data: [10, 15, 5, 81, 55],
        }, {
          label: "Dataset 2",
          backgroundColor: "rgba(197,213,167,0.5)",
          hoverBackgroundColor: "rgba(197,213,167,1)",
          data: [90, 85, 95, 19, 45]
        }]
      },
      options: {
        scales: {
          xAxes: [{
            stacked: true
          }],
          yAxes: [{
            stacked: true
          }]
        }
      }
    };

    var ctx = document.getElementById("myChart").getContext("2d");
    new Chart(ctx, config);

【问题讨论】:

  • HTML 代码:
  • 任何可以解释 Angular js 中链接指令/模板和控制器的示例都将受到高度赞赏。谢谢。

标签: javascript html angularjs chartjs-2.6.0


【解决方案1】:

如何在自定义指令中封装 jQuery 代码1

任何操作 DOM 的 jQuery 代码都应该封装在 custom directive 中,以便在 AngularJS 框架实例化元素时执行。

app.directive("myChartJs", function()
     var config = {
         //....
     };
     return {
         link: postLink,
     };
     function postLink(scope,elem,attrs) {
         var ctx = elem[0].getContext("2d");
         new Chart(ctx, config);
     }
});

用法:

<canvas id="myChart" my-chart-js>
</canvas>

要使用 jQuery,只需确保它在 angular.js 文件之前加载。

有关详细信息,请参阅

【讨论】:

    猜你喜欢
    • 2016-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-09
    • 2020-10-12
    • 1970-01-01
    • 2014-04-20
    • 2017-12-10
    相关资源
    最近更新 更多