我正在使用Angular2-rc4和angular-cli webpack,并希望实现chart.js库.
我使用以下方法将chart.js安装到我的项目中:
npm install chart.js --save
然后我尝试在我的组件中导入chart.js:
import {Component, OnInit, ViewChild} from '@angular/core';
import 'chart.js/src/chart.js';
declare let Chart;
@Component({
selector: 'app-dashboard',
templateUrl: 'dashboard.component.html',
styleUrls: ['dashboard.component.scss']
})
export class DashboardComponent {
chart: Chart;
}
Run Code Online (Sandbox Code Playgroud)
但我在控制台日志中出错:
[default] /Applications/MAMP/htdocs/bridge/src/app/dashboard/dashboard.component.ts:12:9
Cannot find name 'Chart'.
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
iMe*_*iMe 30
我有一个类似的问题,结果我引用了一个旧的例子.
首先,正如您已经正确完成的那样,使用NPM安装库:
npm install chart.js --save
Run Code Online (Sandbox Code Playgroud)
然后,在组件中,导入库:
import Chart from 'chart.js';
Run Code Online (Sandbox Code Playgroud)
要使用快速示例启动并运行,请查看Chart.js 文档中的示例代码或查看下面的示例.
import Chart from 'chart.js';
import { ViewChild, Component, ElementRef, OnInit } from '@angular/core';
@Component({
selector: 'app-dashboard',
template: '<canvas #donut></canvas>'
})
export class DashboardComponent implements OnInit {
@ViewChild('donut') donut: ElementRef;
constructor(
) { }
ngOnInit() {
let donutCtx = this.donut.nativeElement.getContext('2d');
var data = {
labels: [
"Value A",
"Value B"
],
datasets: [
{
"data": [101342, 55342], // Example data
"backgroundColor": [
"#1fc8f8",
"#76a346"
]
}]
};
var chart = new Chart(
donutCtx,
{
"type": 'doughnut',
"data": data,
"options": {
"cutoutPercentage": 50,
"animation": {
"animateScale": true,
"animateRotate": false
}
}
}
);
}
}
Run Code Online (Sandbox Code Playgroud)
Kar*_*k P 21
在模板中不要忘记将画布括在div中.如果canvas是dom中custom定制的直接子项,则可能无法加载图表.
<div><canvas id="myChart"></canvas></div>
Run Code Online (Sandbox Code Playgroud)
我浪费了很多时间来发现这个问题.
小智 5
这是npmjs中少数最好的模块:
然后你可以在你的模块中使用它:
import { ChartModule } from 'angular2-chartjs';
@NgModule({
imports: [ ChartModule ]
// ...
})
export class AppModule {
}
Run Code Online (Sandbox Code Playgroud)
在html模板中:
<chart [type]="type" [data]="data" [options]="options"></chart>
Run Code Online (Sandbox Code Playgroud)
别忘了用数据填写;)
| 归档时间: |
|
| 查看次数: |
24332 次 |
| 最近记录: |