0

我试图仅在用户按下按钮时显示图表!目前我正在做以下事情:

在 html 中:

<canvas ng-hide="secondGraph" id="bar" class="chart chart-bar" data="data" labels="labels"></canvas>
<button class="btn btn-theme btn-block" ng-click="secondGraphCtrl()"><i class="fa fa-lock"></i> Second Graph</button>

在 controllers.js 中:

$scope.secondGraphCtrl = function() {
        if($scope.secondGraph==true)
            $scope.secondGraph=false;
        else
            $scope.secondGraph=true;
    }

但图表从不显示......我的 $scope.secondGraph 开始 = true

提前致谢

4

2 回答 2

1

我假设您没有对 Chart.js 使用任何角度指令(来自 SO 标签)。如果是这样,您只需要在 Chart.js 画布可见后绘制线条。所以把它包$scope.secondGraph=false;在一个块里,然后把它放在var cts=... ; new Chart(ctx).Bar...; 右边。

小提琴 = https://jsfiddle.net/pbog134e/

还要查看您的 HTML,如果您希望动态更新图表,您要么必须查看数据和标签,要么使用类似http://jtblin.github.io/angular-chart.js/的东西

于 2015-06-04T22:14:09.843 回答
0

如果Angular知道页面上存在您的图表,您正在使用简单的画布位吗?它不是!

最好的方法是尝试将图表引入 Angular 生态系统,即编写自己的图表指令或使用角度图表库。

检查这个: http: //krispo.github.io/angular-nvd3/#/

于 2015-06-05T01:46:50.853 回答