首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IE 7中Ember.js渲染速度较慢

IE 7中Ember.js渲染速度较慢
EN

Stack Overflow用户
提问于 2013-06-19 22:23:23
回答 2查看 1.3K关注 0票数 2

我们使用EmberJS (版本1.0.0-rc5)创建了一个web应用程序。我们注意到Chrome的性能很好,不幸的是,我们必须支持Internet Explorer7作为我们的主要平台。

我们注意到IE7上的性能非常糟糕。在研究了这个问题之后,它归结为模板的渲染(尽管路由也非常慢)。我们不知道这是由于我们构建应用程序的方式上的错误,还是Ember的问题。

我创建了一个小示例应用程序来重现这个问题。你可以在http://manoswerts.be/playground/ember-performance上找到它。它渲染一个类似于我们在应用程序中所做的树。在Chrome中运行时,结果会立即显示出来。在IE7中,渲染需要30秒到1分钟。在IE8中,“只”需要7秒。

有人熟悉这个吗?有没有解决这个问题的办法?

任何帮助都是非常感谢的。

EN

回答 2

Stack Overflow用户

发布于 2013-06-20 00:04:17

尝试添加以下内容,以获取有关耗时如此之久的更多详细信息:

代码语言:javascript
复制
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中运行您的示例时,每个person模板大约需要2毫秒的渲染时间。在这些{{each}}块中,还有一些与嵌套{{each}}帮助器和呈现“虚拟”视图相关的开销。总的列表渲染时间是104ms。该总时间将是您点击Show results按钮后编写的最后一行console.log代码。

因此,根据您所说的,我预计ie7和ie8的总时间会慢一个数量级。如果是这样的话,想知道它是均匀分布的,还是有一个呈现速度慢得多的特定视图。

票数 1
EN

Stack Overflow用户

发布于 2013-07-08 13:34:07

对于IE7和IE8来说,我需要同样的时间,大约4-5秒。

其他ember js示例应用程序

https://github.com/dgeb/ember_data_example

完全不能与IE7一起工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17193817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档