2015-04-22 167 views
4

我正在使用AngularJS構建一個應用程序。在這個應用程序中,我想用一些數據顯示線圖。我有兩個'標籤'的頁面。我使用了我自己的實現: 頂部有兩個按鈕,$scope.graph.visible布爾值,通過點擊這些按鈕來設置布爾值。Angular-Chart沒有渲染任何東西

這是HTML中的圖表:

<canvas 
    data="{{graph.data}}" 
    labels="{{graph.labels}}" 
    options="{{graph.options}}" 
    legend="{{graph.legend}}" 

    ng-show="{{graph.visible}}"> 
</canvas> 

在控制器我得到這樣的:

$scope.graph.data = [1, 2, 3, 4, 5, 6, 7, 8]; 
    $scope.graph.labels = ['hoi', 'doei', 'hallo', 'hee', 'hoi', 'doei', 'hallo', 'hee',]; 
    $scope.graph.options = { 
    animation: false 
    }; 
    $scope.graph.legend = true; 

在頁面我看到這個(當圖形應該是可見的)的源極:

<canvas data="[1,2,3,4,5,6,7,8]" labels="["hoi","doei","hallo","hee","hoi","doei","hallo","hee"]" options="{"animation":false}" series="" colours="" getcolour="" click="" hover="" legend="true" ng-show="true" class="ng-hide" style=""> 
</canvas> 

編輯//我不知道爲什麼它具有類ng-hide

EDIT2 //當我手動刪除ng-hide類時,我可以看到帶有網絡檢查器的白色塊。否則我甚至無法找到。

EDIT3 //此外,當我在HTML文件中添加class=""時,它不會刪除ng-hide類。

EDIT4 // http://plnkr.co/edit/2Wr3HvMzcwfQG2tmsJgX?p=preview

+0

在控制檯中的任何錯誤?你可以提供jsfiddle或者plunker嗎? – Grundy

+0

控制檯中沒有錯誤。是的,我會在幾分鐘內提供一名運動員或其他東西! – JeroenJK

+0

http://plnkr.co/edit/2Wr3HvMzcwfQG2tmsJgX?p=preview這是一個蹲點!希望你能幫我! – JeroenJK

回答

5

您不必使用{{}}當它是從數據的範圍,所以你必須要改變這樣的:此外

<canvas 
    class="chart chart-line" 
    data="graph.data" 
    labels="graph.labels" 
    series="graph.series" 
    options="graph.options" 
    legend="graph.legend" 
    ng-show="graph.visible"> 
    </canvas> 

,數據應該是陣列的像

$scope.graph.data = [[1, 2, 3, 4, 5, 6, 7, 8]]; 

陣列看到這裏工作Plunker(由格倫迪評價固定):http://plnkr.co/edit/xQ42shTY6qrteNXOYX2F?p=preview

+0

這就是我雖然也是,但因爲沒有大括號它只是打印「graph.visible」我把它放在那裏。現在它打印出「真」或「假」。我知道這很奇怪。我評論了一個老虎的原始帖子,看看那裏! – JeroenJK

+0

當你沒有你的支架,你在開發工具中懸停「畫布」,你可以看到它在那裏。你的問題是「畫布」不是一個指令或不做任何事情。 –

+0

當我刪除它時,畫布確實可見(但仍是白色......),但它在Web檢查器中具有'ng-show =「graph.visible」'。這很好嗎? – JeroenJK

相關問題