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、下载好微乐卡五星祈福有用...
查到实测辅助!川南欢乐碰辅助,... 查到实测辅助!川南欢乐碰辅助,佛手在线做辅助下载,详细教程(有挂细节)1、佛手在线做辅助下载免费辅助...
终于懂了!微信呢小程序辅助器,... 终于懂了!微信呢小程序辅助器,福建兄弟十三水挂件去那买,详细神器(有挂秘笈)1)福建兄弟十三水挂件去...
推荐攻略!798大菠萝辅助,边... 推荐攻略!798大菠萝辅助,边锋干瞪眼开挂,详细技巧(有挂辅助)1.边锋干瞪眼开挂 选牌创建新账号,...
推荐一款!八闽福建辅助,开心泉... 推荐一款!八闽福建辅助,开心泉州小程序辅助免费下载,详细方法(有挂解惑)1、推荐一款!八闽福建辅助,...
科普常识!微乐江苏小程序游戏破... 科普常识!微乐江苏小程序游戏破解器下载,朋友圈辅助软件,详细app(有挂存在)1、微乐江苏小程序游戏...
一起来讨论!欢乐达人破解器,拱... 一起来讨论!欢乐达人破解器,拱趴大菠萝修改器,详细教程(真是有挂)1、很好的工具软件,可以解锁游戏的...
一分钟揭秘!微乐河南小程序微乐... 一分钟揭秘!微乐河南小程序微乐辅助脚本,蛮王大厅房卡辅助,详细技巧(真的有挂)1、微乐河南小程序微乐...
我来分享!雀友会广东潮汕辅助脚... 我来分享!雀友会广东潮汕辅助脚本,腾讯欢乐卡五星辅助器,详细器(有挂教程);1.雀友会广东潮汕辅助脚...
重大通报!微信微乐跑得快游戏辅... 重大通报!微信微乐跑得快游戏辅助脚本,闲来透视辅助器最新版,详细器(有挂工具)亲,关键说明,微信微乐...