簡體   English   中英

Ember.js在IE 7中呈現緩慢

[英]Ember.js rendering slow in IE 7

我們使用EmberJS(版本1.0.0-rc5)創建了一個Web應用程序。 我們注意到Chrome具有出色的性能,很遺憾,我們必須支持Internet Explorer 7作為我們的主要平台。

我們注意到IE7的性能非常糟糕。 在研究了問題之后,歸結為模板的呈現(盡管路由也非常慢)。 我們不知道這是由於構建應用程序的方式錯誤還是Ember存在問題。

我創建了一個小樣本應用程序來重現該問題。 您可以在http://manoswerts.be/playground/ember-performance上找到它。 它渲染的樹類似於我們在應用程序中所做的。 在Chrome中運行時,結果會立即顯示。 在IE7中,渲染大約需要30秒到一分鍾。 在IE8中,“僅”需要7秒鍾。

有人熟悉嗎? 有解決這個問題的方法嗎?

任何幫助是極大的贊賞。

嘗試添加以下內容以獲取有關花費了這么長時間的更多信息:

Ember.subscribe('render', {
  before: function(name, start, payload){
    return start;
  },
  after: function(name, end, payload, start){
    var duration = Math.round(end - start);
    var template = payload.template || '';
    //console.log(Ember.inspect(payload));
    //var title;
    var view = payload.object.toString();
    console.log('rendered', template, view, 'took', duration, 'ms');
  }
});

這將為您提供渲染每個視圖的時間。 當我在Chrome中運行您的示例時,每個人模板大約需要2毫秒的渲染時間。 嵌套{{each}}助手和在這些{{each}}塊中渲染“虛擬”視圖也有一些開銷。 列表渲染時間總計為104毫秒。 總時間將是單擊“ Show results按鈕后最后寫入的console.log行。

因此,基於您的發言,我希望ie7和ie8的總時間要慢一個數量級。 如果是這樣,想知道它是均勻分布的還是存在一個渲染得慢得多的特定視圖。

對於IE7和IE8,這對我來說都是相同的時間,大約4-5秒。

其他ember js示例應用程序

https://github.com/dgeb/ember_data_example

與IE7完全不兼容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM