ng2-chart всегда ничего не отображает в моем проекте angular2 js

Исходный код находится на: https://github.com/DeronLee/Fitness.git.

Он уже работал без вывода чего-либо на экран.

Я просто слежу за http://valor-software.com/ng2-charts/ и хочу добавить диаграммы. Я пробовал гистограмму и линейную диаграмму. Все работало нормально, но на диаграмме всегда ничего.

Просмотр страницы  Элемент в инструментах разработчика Chrome

Файл компонента:

import {Component, OnInit} from '@angular/core'
import {NgFor, NgClass, NgIf} from "@angular/common";
import {CORE_DIRECTIVES, FORM_DIRECTIVES} from "@angular/common"
import {DataService} from './services/data'
import {Data} from "./interface/interface";
import {CHART_DIRECTIVES} from 'ng2-charts/ng2-charts';

@Component({
    selector: 'display',
    directives: [CORE_DIRECTIVES, NgFor, NgClass, NgIf, CHART_DIRECTIVES, FORM_DIRECTIVES],
    templateUrl: './app/display.component.html',
    providers: [DataService]
})


export class DisplayComponent implements OnInit {
    public data;

    getData(){
        this.data = this.dataService.getData()[0]
    }


    constructor(private dataService:DataService){

    }

    ngOnInit(){
        this.getData()
    }

    // lineChart
    public lineChartData:Array<any> = [
        [65, 59, 80, 81, 56, 55, 40],
        [28, 48, 40, 19, 86, 27, 90]
    ];
    public lineChartLabels:Array<any> = ['January', 'February', 'March', 'April', 'May', 'June', 'July'];
    public lineChartType:string = 'line';
    public pieChartType:string = 'pie';

    // Pie
    public pieChartLabels:string[] = ['Download Sales', 'In-Store Sales', 'Mail Sales'];
    public pieChartData:number[] = [300, 500, 100];

    public randomizeType():void {
        this.lineChartType = this.lineChartType === 'line' ? 'bar' : 'line';
        this.pieChartType = this.pieChartType === 'doughnut' ? 'pie' : 'doughnut';
    }

    public chartClicked(e:any):void {
        console.log(e);
    }

    public chartHovered(e:any):void {
        console.log(e);
    }
}

HTML

<div *ngIf="data">
    <span>Type {{data.type}}</span>
    <span>Name {{data.name}}</span>



</div>
<div class="col-md-6">

    <base-chart class="chart"
                [data]="lineChartData"
                [labels]="lineChartLabels"
                [options]="lineChartOptions"
                [chartType]="lineChartType"
                (chartHover)="chartHovered($event)"
                (chartClick)="chartClicked($event)"></base-chart>
</div>
<div class="col-md-6">
    <base-chart class="chart"
                [data]="pieChartData"
                [labels]="pieChartLabels"
                [chartType]="pieChartType"
                (chartHover)="chartHovered($event)"
                (chartClick)="chartClicked($event)"></base-chart>
</div>
<div class="col-md-12 text-center" style="margin-top: 10px;">
    <button (click)="randomizeType()" style="display: inline-block">Toggle</button>
</div>

person Deron Lee    schedule 15.06.2016    source источник


Ответы (1)


Попробуйте добавить в аннотацию к вашему компоненту следующее:

@Component({
  ...
  styles: [`
    .chart {
      display: block;
    }`
  ],
person yurzui    schedule 16.06.2016
comment
да. IDE предупредила, что селектор .chart никогда не использовался. Но теперь график работал нормально. Зачем? - person Deron Lee; 20.06.2016
comment
Поскольку браузер не умеет отображать неизвестный тег base-chart - person yurzui; 20.06.2016