【问题标题】:Angular and CharJS - ERROR TypeError: Cannot read property '15' of undefinedAngular 和 CharJS - 错误类型错误:无法读取未定义的属性“15”
【发布时间】:2023-12-17 15:49:01
【问题描述】:

以下错误:

ERROR TypeError: Cannot read property '15' of undefined
at ChartElement.getPixelForValue (Chart.js:14599)
at ChartElement.updateElement (Chart.js:5930)
at ChartElement.addElementAndReset (Chart.js:3781)
at ChartElement.insertElements (Chart.js:4068)
at ChartElement.resyncElements (Chart.js:4059)
at ChartElement.buildOrUpdateElements (Chart.js:3806)
at Chart.update (Chart.js:9630)

在 Angular 8 的 ChartJS 图表上调用 chart.update() 时发生。 这发生在特定情况下,并且在调试期间直到chart.update() chart var 看起来没问题,并且与 ERROR 不弹出时相同。 任何想法property '15' 是什么以及可能导致此问题的原因,以便我可以进行调试?

编辑: 我设法用property '0' 重现到property '5' 的错误,所以它不是特定于property '15',但仍然具有相同的功能。

【问题讨论】:

  • 您能否从您怀疑此错误的文件中粘贴一些代码?这可能有助于诊断发生这种情况的原因。

标签: angular typescript chart.js angular8


【解决方案1】:

尝试再次创建图表,而不是使用 chart.update()。

要再次创建它,您必须先销毁现有图表。

 update ()=>{    
   chart.destroy();
   //code for chart creation
 }

【讨论】:

  • 解决了,谢谢!这应该是关于速度的问题吗?并且您是否首先知道导致错误的原因?
  • 可能您使用了一个数组,而该数组在第 15 个索引位置可能没有值。需要看你的代码才能确定。
最近更新 更多