我们正在使用cytoscape.js在Angular JS应用中渲染图形,并且它似乎在泄漏DOM节点。 Chrome Dev Tools中的快照比较显示,全局cytoscape对象中“instances”数组保留了独立DOM树。如何销毁cytoscape.js实例
cytoscape实例是在指令的链接函数中创建的,我想清除作用域$ destroy事件上的这些对象。即使我手动取消对这些实例的引用,还有其他全局对象,如CanvasRenderer.data.container或CanvasRenderer.bindings []。target,它们仍然保留在这些元素上,以防止它们被垃圾收集。
我的问题是:cytoscape是否有一个destroy()方法,可以释放这些DOM元素的引用,我可以调用角度$ destroy事件?或者什么是摆脱这些全球参考的正确方法?
从Chrome浏览器开发工具探查截图在这里:https://drive.google.com/folderview?id=0B6OGkJMuELQHeC01U1FBYkd4NVU&usp=drive_web
(缺乏足够的声誉,这里以图片)
此问题已通过快照修复[661]修复(https://github.com/cytoscape/cytoscape.js/issues/661) – GlobalVariable 2014-09-03 00:22:34