Wenn Sie Echart in Angular verwenden, müssen Sie die Echart-API nur im entsprechenden Komponentenlebenszyklus aufrufen. Initialisierung von EchartInitialisieren Sie Echarts im ngOnInit-Ereignis der Komponente, konfigurieren Sie die Option, und dann wird das Echarts-Diagramm generiert. App-Basisdiagrammkomponentehtml<div #chart [ngClass]="'chart-box ' + (!option ? 'empty-chart' : '')"></div> CSS// Grundlegender Diagrammstil.chart-box{ Schriftstärke: fett; Rand: 1px durchgezogen #dcdcdc; Rahmenradius: 4px; } // Stil, wenn Option nicht verfügbar ist.empty-chart{ Anzeige: Flex; Inhalt ausrichten: zentriert; Elemente ausrichten: zentrieren; Schriftgröße: 18px; } importiere { Komponente, ElementRef, Eingabe, OnDestroy, OnInit, ViewChild } aus '@angular/core'; importiere { von Event, Abonnement, Timer } von „rxjs“; importiere { debounceTime, tap } aus 'rxjs/operators'; importiere { ECharts, EChartsOption, init } von 'echarts'; @Komponente({ Selektor: ‚App-Basisdiagramm‘, Vorlagen-URL: "./base-chart.component.html", styleUrls: ['./base-chart.component.scss'] }) Exportklasse BaseChartComponent implementiert OnInit, OnDestroy { @Input()-Option: EChartsOption; @Input() Höhe = "300px"; @Input() Breite = "100 %"; @ViewChild('Diagramm', { statisch: true }) Diagramm: ElementRef; ein Diagramm: ECharts; windowResize: Abonnement; Timer: Abonnement; Standardraster = { oben: 10, rechts: 10, unten: 30, links: 30, }; Konstruktor() { } ngOnInit(): void { dies.setListen(); diese.boxStyleInit(); if (!!diese.option) { dies.echartsInit(); }anders{ this.chart.nativeElement.innerText = „Noch keine Daten“; } } // Wenn die Komponente zerstört ist, storniere das zugehörige Abonnement ngOnDestroy(): void { wenn (dieses.windowResize) { this.windowResize.abbestellen(); } wenn (dieser.Timer) { dies.timer.abbestellen(); } } // Initialisiere die Größe des Containers boxStyleInit(): void { dieses.chart.nativeElement.style.width = diese.width; dieses.chart.nativeElement.style.height = diese.höhe; } // Setze den Ereignis-Listener für die Größenänderung des Fensters und zeichne die Größe der E-Charts neu setListen(): void { this.windowResize = fromEvent(Fenster, 'Größe ändern').pipe( Entprellzeit(200), tippen(res => { dies.aChart.resize(); }) ).abonnieren(); } // Konfigurieren und generieren Sie ein eCharts-Diagramm gemäß der Option echartsInit(): void { Dies ist eine Tabelle, die aus mehreren Elementen besteht. this.aChart.setOption(Object.assign({ grid: this.defaultGrid }, this.option)); // Größe der E-Charts durch den Verzögerer ändern this.timer = timer(400).subscribe(res => { dies.aChart.resize(); }); } } Verwenden der App-Base-Chart-Komponente<app-base-chart [Option]="Option" Breite="100%" Höhe="300px" ></app-base-chart> Verwenden Sie einfach den obigen Code im HTML der Komponente und Sie können auch die Höhe und Breite konfigurieren. Option ist die Option, die offiziell von echarts definiert wurde Dies ist eigentlich eine einfache Kapselung einer grundlegenden Echarts-Generierungskomponente, alle Konfigurationselemente sind Echarts ZusammenfassenDieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalt auf 123WORDPRESS.COM lesen können! Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der häufigsten Fehler im Webdesign
>>: Einführung in den Installationsprozess von MySQL 8.0 in einer Linux-Umgebung
Inhaltsverzeichnis Wasserwelleneffekt Sehen wir u...
Benutzertabelle, ID-Nummer muss eindeutig sein, M...
Inhaltsverzeichnis In JavaScript können wir norma...
1: Definieren Sie eine gespeicherte Prozedur zum ...
Wenn wir ein Karussell bauen wollen, müssen wir z...
Inhaltsverzeichnis Vorwort 1. Welche Variablen we...
Version 1.4.2 Offizielle Dokumentation Dockerhub ...
Inhaltsverzeichnis Eine Kastanie zum Abdecken Par...
Die Trennung von Lese- und Schreibzugriffen in Da...
Hintergrund Alles begann, als ein Klassenkamerad ...
In diesem Artikelbeispiel wird der spezifische Co...
Code kopieren Der Code lautet wie folgt: 1. Sina ...
Ich frage mich, ob Sie wie ich ein Programmierer ...
Einführung Basierend auf Docker-Containern und Do...
Verwenden von UNION Die meisten SQL-Abfragen best...