我在AngularJS应用程序中使用highcharts,并与highcharts-ng指令结合使用,并且存在内存泄漏,无法删除。我的应用程序包含一个幻灯片,其中有一些幻灯片会在一定时间后交换。这些幻灯片包括图表。

为了进行一些测试,我构建了3个不同的片段:

1-一个简单的javascript应用,可每秒重新构建一个图表。这不会产生内存泄漏:http://jsfiddle.net/78af7zcm/

2-管理一系列图表的AngularJS应用。它每秒都会删除一张图表,并包含另一张图表,以模拟幻灯片的行为。我无法在此处检测到内存泄漏:http://plnkr.co/edit/7Zkheiz82ajVusB2EtqH?p=preview

3-类似于2的AngularJS应用,但是管理活动图表,该活动图表通过侦听事件进行修改。之所以会监听该事件,是因为在我的原始应用中,我必须像这样进行操作,这就是内存泄漏的位置。 http://plnkr.co/edit/7cvDrMlWlgLOBAwoNgkW?p=preview。在执行了1个小时并拍摄快照后,我可以看到以下内容:

javascript - 使用Highcharts + AngularJS的内存泄漏-LMLPHP

有人可以告诉我为什么会这样吗?

最佳答案

我已经解决了我的问题,取出highcharts-ng指令并仅使用本机Highcharts。无论如何,我不明白为什么会产生内存泄漏,但是我已经将其发布在他们的网站上。

07-24 09:47
查看更多