From 896f65e922959b387e857a1aab592ebbd1241fdf Mon Sep 17 00:00:00 2001 From: bnayal Date: Sun, 24 Jul 2016 09:15:42 +0300 Subject: [PATCH] Chartist - update chart on date change --- .../baChartistChart.component.ts | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) 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(); + } } }