我在面板内创建一个网格,当我销毁网格时,对它的引用保留在面板的初始配置中,这意味着它没有被正确清理。有没有办法阻止这个初始配置甚至被创建/清除它的方式,因此它将保存引用的帽子对象将被正确清理?
答案 0 :(得分:1)
您可以在Base析构函数中将其清空。不幸的是Base不是一个真正的类,所以通过Ext.define
覆盖它不是正确的方法,但我们可以通过闭包来解决这个问题:
(function() {
var oldDestroy = Ext.Base.destroy;
Ext.Base.destroy = function() {
this.config = this.initialConfig = null;
oldDestroy.call(this);
};
})();
如果内存泄漏是您应用中的问题,我会强烈建议您升级到Ext JS 6。我们在6.0中插入了大部分组件泄漏,不幸的是,如果没有主要的兼容性问题,这项工作在很大程度上是不可移植的。