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、这是跨平台的智星菠萝辅助轻量版有透...
2024教程!盛世辅助插件,皇... 2024教程!盛世辅助插件,皇豪互众插件,详细插件(有挂方略)1、首先打开盛世辅助插件辅助器下载最新...
技巧辅助挂!aapoker辅助... 技巧辅助挂!aapoker辅助工具安全吗,德扑之星怎么设置埋牌,总是是有挂(真是有挂)1、德扑之星怎...
玩家必备攻略!潮友会鱼虾蟹骰子... 玩家必备攻略!潮友会鱼虾蟹骰子概率计算公式,微乐小程序透视工具,详细器(证实有挂)1、潮友会鱼虾蟹骰...
据公告内容!hhpoker外挂... 据公告内容!hhpoker外挂靠谱吗,红龙poker辅助,确实是有挂(有挂规律)1、下载好红龙pok...
推荐一款!胡乐情怀宜春外挂,凑... 推荐一款!胡乐情怀宜春外挂,凑一桌开挂游戏辅助,详细软件(有挂透明挂)1、下载好凑一桌开挂游戏辅助脚...
黑科技技巧!xpoker辅助助... 黑科技技巧!xpoker辅助助手,德扑之心免费透视,一直是真的有挂(有挂辅助)1、德扑之心免费透视免...
重大来袭!麻辣竞技辅助,同乡游... 重大来袭!麻辣竞技辅助,同乡游有辅助软件吗,详细教程(有挂技术)1、同乡游有辅助软件吗免费辅助多个强...
今日!newpoker脚本,德... 今日!newpoker脚本,德扑之星辅助器,其实确实有挂(有挂解惑)暗藏猫腻,小编详细说明德扑之星辅...