Angular2打字稿中的第三方JS

时间:2016-01-07 10:40:10

标签: angular typescript

我是角色和打字稿的新手,所以这可能是非常基本的。

我正在尝试使用模板中的图表(使用Chart.js)制作angular2组件。

我意识到正在开发chart directive,专门使用Chart.JS,但我想了解如何做到这一点,因为它无疑会出现在指令不可用的情况下

到目前为止,我试图在模板中做这个简单的事情:

<canvas id="chart"></canvas>
<script> 
$(function () {
//instantiate chart on $("#chart")
});
</script>

但是当这个模板由angular2加载时,这个javascript甚至都没有运行。

我该怎么做?

1 个答案:

答案 0 :(得分:11)

好的 - 在@Pogrindis的帮助下,我想我发现了一个可用的,不太复杂的解决方案。

只需从here添加chart.js的输入定义并在自定义指令中引用它,我终于得到了这个:

chart.directive.ts

import {Component} from 'angular2/core';
import {ChartDirective} from './chart.directive';

@Component({
    directives: [ChartDirective],
    selector: 'chart-graph', 
    templateUrl: '/js/app/template.html'
})

export class AppComponent { }

app.component.ts

<canvas id="myChart" chart width="400" height="400"></canvas>

和template.html:

for (int i = 0; i < numbers.length; i++) {