我正在使用Angular和Material Design。 当我添加一个Angular Chart时,它不会在页面上呈现,但chrome的开发工具没有显示任何错误。我怎么可能做错了?
我为此HERE
设置了一个plunker要了解我的代码,请参阅下面的代码段
<div role="tabpanel"
id="tab1-content"
aria-labelledby="tab1"
ng-switch-when="0"
md-swipe-left="next()"
md-swipe-right="previous()"
layout="row" layout-align="center center">
<md-card flex-gt-sm="90" flex-gt-md="80">
<md-card-content>
<h2>Profile / Utilization</h2>
<canvas id="doughnut" class="chart chart-doughnut" data="data"
labels="labels"></canvas>
<md-list>
</md-list>
</md-card-content>
</md-card>
</div>
index.js
var app = angular.module('StarterApp', ['ngMaterial', 'ngMdIcons','chart.js']);
app.controller("DoughnutCtrl", function ($scope) {
$scope.labels = ["Download Sales", "In-Store Sales", "Mail-Order Sales"];
$scope.data = [300, 500, 100];});
答案 0 :(得分:2)
我认为您需要为图表指定控制器。所以
<md-card-content ng-controller="DoughnutCtrl">
目前,您的代码的上下文绑定到AppCtrl
,但不包含图表数据。
答案 1 :(得分:1)
因为你无处将“DoughnutController”绑定到你的视图..
我将此块移动到“AppCtrl”并且它可以工作..
$scope.labels = ["Download Sales", "In-Store Sales", "Mail-Order Sales"];
$scope.data = [300, 500, 100];
http://plnkr.co/edit/zkXYb5sHmwRUQQPmsdbq?p=preview
(我还删除了3个<head>
代码和3个<body>
代码