AngularNGXChart在加载时未正确适应父容器大小
创始人
2024-10-28 18:31:17
0

使用ViewChild和ngAfterViewInit钩子对图表进行重新渲染。

在组件的HTML文件中,设置一个包含图表的div,并使用ngStyle指令将其大小设置为父级容器的大小:

在组件的TS文件中,使用ViewChild和ngAfterViewInit来获取父级容器的大小,并在重新渲染图表时将其应用于ngx-charts组件:

import { Component, ViewChild, ElementRef, AfterViewInit } from '@angular/core';
import { ChartComponent } from 'ng2-charts';

@Component({
  selector: 'app-my-chart',
  template: '
', styleUrls: ['./my-chart.component.css'] }) export class MyChartComponent implements AfterViewInit { @ViewChild('chartDiv') chartDiv: ElementRef; @ViewChild(ChartComponent) chartComponent: ChartComponent; public pieChartData: number[] = []; public pieChartLabels: string[] = []; public pieChartType = 'pie'; public pieChartOptions: any = { responsive: true }; parentHeight: string; parentWidth: string; ngAfterViewInit() { this.parentHeight = this.chartDiv.nativeElement.parentElement.offsetHeight + 'px'; this.parentWidth = this.chartDiv.nativeElement.parentElement.offsetWidth + 'px'; this.chartComponent.chart.update(); } }

该示例组件显示了一个饼图,将其大小设置为其父级容器的大小。在ngAfterViewInit钩子中,我们使用ViewChild获取chartDiv元素的引用,并使用nativeElement获取其父元素的高度和宽度。然后,我们更新ChartComponent的图表,并在这之后重新渲染。

相关内容

热门资讯

玩家必看科普!德普之星辅助挂多... 玩家必看科普!德普之星辅助挂多功能透视工具,一贯真的是有挂(有挂教学)1、完成德普之星辅助器v3.3...
科普!红龙poker辅助挂多功... 科普!红龙poker辅助挂多功能透视工具,一贯是真的有挂(新版有挂)亲,关键说明,红龙poker透视...
热门推荐!德扑圈辅助挂多功能透... 热门推荐!德扑圈辅助挂多功能透视工具,原来真的有挂(确实有挂)1、上手简单,内置详细流程视频教学,新...
玩家必看分享!智星德州扑克辅助... 玩家必看分享!智星德州扑克辅助挂多功能透视工具,切实真的有挂(有挂存在)1)智星德州扑克免费钻石:进...
今日公布!智星德州扑克辅助挂多... 今日公布!智星德州扑克辅助挂多功能透视工具,竟然真的是有挂(有挂技巧)1、下载好智星德州扑克透视辅助...
实操分享!德扑圈辅助挂多功能透... 实操分享!德扑圈辅助挂多功能透视工具,总是是真的有挂(详细教程)1)德扑圈免费钻石:进一步探索德扑圈...
实测教程!德扑之星辅助挂多功能... 实测教程!德扑之星辅助挂多功能透视工具,一直是有挂(有挂秘籍)在进入德扑之星软件靠谱后,参与本局比赛...
玩家亲测!aapoker辅助挂... 玩家亲测!aapoker辅助挂多功能透视工具,一贯有挂(有挂解惑)1、下载好aapoker脚本下载之...
玩家必看秘籍!AAPoKer辅... 玩家必看秘籍!AAPoKer辅助挂多功能透视工具,本来有挂(果真有挂)1、每一步都需要思考,不同水平...
带你了解!AAPoKer辅助挂... 带你了解!AAPoKer辅助挂多功能透视工具,切实真的有挂(有挂教学)1、不需要AI权限,帮助你快速...