如何在Angular 2中实现D3 [英] How to implement D3 in Angular 2

查看:162
本文介绍了如何在Angular 2中实现D3的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想实现这个代码从d3.js到angular 2组件,但我不知道如何调用js文件到组件ts文件。我找到一些折线图的代码,用index.html和lineChart.js。如何在 ngAfterViewInit afterViewInit 中调用javascript。



图表的示例如下 http:/ /plnkr.co/edit/Jijnm8W4sRzAAsLMTvgV?p=preview



所以我想在ngAfterViewInit的组件ts中调用。



这里是组件的代码:

  import {Component,Directive,ViewChild,ElementRef,Renderer} from'angular2 / core'; 
import {bootstrap} from'angular2 / platform / browser';

declare var d3:any;
declare var jQuery:any;
@Directive({

})
class H3 {}


@Component({
selector:'my -app',

})
export class D3 {

constructor(public renderer:Renderer,public el:ElementRef){}

ngOnInit(){

}


ngAfterViewInit(){



}

}


解决方案

像这样:

  declare var d3:any; 

export class D3 {
constructor(public renderer:Renderer,public el:ElementRef){}

ngOnInit(){

}

ngAfterViewInit(){
var el:HTMLElement = this.el.nativeElement;
var root = d3.select(el);

root.append('svg')
(...)
}
}

有关详情,请参阅此问题:



查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆