我正在面板内创建一个网格,当我破坏网格时,对其的引用将保留在面板的初始配置内,这意味着它从未被正确清理。有没有办法阻止这个initialconfig甚至被创建/清除它的方法,以便保留引用的帽子对象将被正确清理?

最佳答案

您可以在基本析构函数中将其为空。不幸的是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中插入了大多数组件泄漏问题,不幸的是,如果没有重大兼容性问题,这种努力在很大程度上将无法向后移植。

关于javascript - 当我销毁保存在Initialconfig中的ExtJs网格对象时,导致大量内存泄漏,我该如何正确摆脱此Initialconfig?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33299854/

10-12 04:01