diff --git a/src/app/theme/components/baChartistChart/baChartistChart.component.ts b/src/app/theme/components/baChartistChart/baChartistChart.component.ts index 56d6f0fb..2c5f477e 100644 --- a/src/app/theme/components/baChartistChart/baChartistChart.component.ts +++ b/src/app/theme/components/baChartistChart/baChartistChart.component.ts @@ -1,4 +1,15 @@ -import {Component, ViewChild, ViewEncapsulation, Input, Output, ElementRef, EventEmitter} from '@angular/core'; +import { + Component, + ViewChild, + ViewEncapsulation, + Input, + Output, + ElementRef, + EventEmitter, + OnInit, + OnChanges, + OnDestroy, +} from '@angular/core'; import {Chartist} from './baChartistChart.loader.ts'; @@ -20,8 +31,22 @@ export class BaChartistChart { @ViewChild('baChartistChart') private _selector:ElementRef; + private chart; + ngAfterViewInit() { - let chart = new Chartist[this.baChartistChartType](this._selector.nativeElement, this.baChartistChartData, this.baChartistChartOptions, this.baChartistChartResponsive); - this.onChartReady.emit(chart); + this.chart = new Chartist[this.baChartistChartType](this._selector.nativeElement, this.baChartistChartData, this.baChartistChartOptions, this.baChartistChartResponsive); + this.onChartReady.emit(this.chart); + } + + ngOnChanges() { + if (this.chart) { + (this.chart).update(this.baChartistChartData, this.baChartistChartOptions); + } + } + + ngOnDestroy():void { + if (this.chart) { + this.chart.detach(); + } } }