2015-06-04 53 views
0

我試圖展示的圖表僅當用戶按下一個按鈕!目前,我做了以下內容:AngularJS隱藏和顯示一個字符

在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

在此先感謝

+1

你可以通過綁定簡化這個'ng-hide'到值'secondGraph'。讓'ng-click'只需在html中設置'secondGraph =!secondGraph'即可。 – Droogans

+0

您的函數是否正在執行? –

+0

是的,它是net.uk.sweet。我發出警報來驗證。它什麼都不顯示,只有系列文字出現 –

回答

1

我假設您沒有對C使用任何角度指令hart.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/

+0

不明白那麼好@potatopeelings,你是什麼意思? –

+0

看看我剛​​剛添加的小提琴 – potatopeelings

0

您正在使用簡單的帆布位如果Angular知道你的圖表出現在頁面上,你會這樣嗎?不是!

最好的辦法是嘗試將圖表插入到角的生態系統,即無論是寫自己的圖表指示或使用角度圖庫..

檢查: http://krispo.github.io/angular-nvd3/#/