我最近从
升级"highcharts-ng": "~0.0.11",
"highcharts-release": "~4.1.9",
"angular-bootstrap": "~0.14.3",
到
"highcharts-ng": "~1.1.0",
"highcharts-release": "~5.0.11",
"angular-bootstrap": "~0.14.3",
并且从那时起才得到这个问题:我有一个单页角度应用程序(Angular 1.5.8)使用Bootstrap UI(不确定是否重要)。 highcharts 4和highcharts-ng 0.0.11不存在该问题。
如果我的网页中包含高图指令 <highchart class="highchart-hover" config="chart"></highchart>
并且我通过导航到其他网页/路由离开此页面,我会看到此错误在Chrome开发者控制台中:
TypeError: Cannot read property 'chart' of undefined
at e.Chart.reflow (script.js:40411)
at script.js:40661
at script.js:25025
at i (script.js:11128)
at script.js:11407
at nrWrapper ((index):43)
在堆栈跟踪之后,我看到源代码如下:
如上所述,使用较旧的highcharts / highcharts-ng版本,此问题不存在。 知道是什么原因引起的吗?我猜有一个检查缺少图表对象是否确实存在。
感谢。
(不幸的是,我现在手头没有jsfiddle。)
答案 0 :(得分:2)
问题出在highcharts-ng图书馆,我在此处提交了一份问题报告:https://github.com/pablojim/highcharts-ng/issues/594
另请参阅此处的评论以获得解决方法。
答案 1 :(得分:0)
我通过将ngAfterViewInit的选项和数据更改为组件的构造函数来解决了这个问题。
来自
ngAfterViewInit(){
data...
options...
}
收件人
constructor(){
data...
options...
}