2017-05-23 110 views
1

我在開發Web應用程序灰燼2.3.0,雖然做了一些跨瀏覽器測試,它變得明顯的應用程序的緩慢IE 11。 在IE開發人員的控制檯上做一些測量,似乎DOM onreadystatechange事件在一段時間內吃掉高達100%的CPU,這可能是泄漏。訪問的XMLHttpRequest從灰燼數據

我發現這篇文章:http://milan.adamovsky.com/2012/02/javascript-memory-leaks-in-internet.html,儘管是老它鼓勵我考歸零的的onreadystatechange事件的情況下,它是內存泄漏的方法。

var ajax = new XMLHttpRequest(); 
ajax.onreadystatechange = function() { 
    if (ajax.readyState === 4) { 
    // code on completion 

    ajax.onreadystatechange = CollectGarbage; 
    ajax = null; 
    } 
}; 

但在Ember中,我不知道如何直接訪問XMLHttpRequest對象。該JSONApiAdapter提供了一個Ajax方法改寫,但我不知道怎樣才能訪問原始對象:

const Adapter = DS.JSONAPIAdapter.extend({ 
    ajax: function(){ ... } 
}) 

回答