Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance Emberjs中最大的性能问题是什么?_Performance_Binding_Ember.js - Fatal编程技术网

Performance Emberjs中最大的性能问题是什么?

Performance Emberjs中最大的性能问题是什么?,performance,binding,ember.js,Performance,Binding,Ember.js,过去6个月,我正在开发一个Emberjs组件 当我尝试开发一个表组件时,我首先遇到了性能问题。此表中的每个单元格都是Ember.View,并且每个单元格都有一个到object属性的绑定。当表格有6列,我试图列出大约100个项目时,导致浏览器冻结了一段时间。因此我发现,最好编写一个返回字符串的函数,而不是使用手柄和由观察者手动处理绑定 那么,如何使用最少的绑定有什么好的实践吗?或者如何编写绑定而不损失很多性能。例如不使用绑定处理大量数据 页面可以附加多少个Ember.View对象 感谢您的回复我们

过去6个月,我正在开发一个Emberjs组件

当我尝试开发一个表组件时,我首先遇到了性能问题。此表中的每个单元格都是Ember.View,并且每个单元格都有一个到object属性的绑定。当表格有6列,我试图列出大约100个项目时,导致浏览器冻结了一段时间。因此我发现,最好编写一个返回字符串的函数,而不是使用手柄和由观察者手动处理绑定

那么,如何使用最少的绑定有什么好的实践吗?或者如何编写绑定而不损失很多性能。例如不使用绑定处理大量数据

页面可以附加多少个Ember.View对象


感谢您的回复

我们有一个在一个页面上显示100个复杂项目的ember应用程序。每个项目都使用现成的把手绑定来输出大约12个属性。它的渲染速度非常快(<100ms),在绑定上花费的时间非常少

如果你发现浏览器挂在6列和100个条目上,肯定有其他错误

那么,如何使用最少的绑定有什么好的实践吗?或者如何编写绑定而不损失很多性能

尝试设置
Ember.LOG\u BINDINGS=true
以查看发生了什么。可能是您要绑定的属性具有循环依赖关系或解析成本高昂。有关调试的重要提示,请参阅本文:

页面可以附加多少个Ember.View对象

我不相信有一个具体的限制,当然这将取决于浏览器。除非有超过几千个,否则我不会考虑优化。

查看此示例,了解如何优化ember以处理非常大的表:


埃里克·布莱恩(Erik Bryn)最近发表了一篇演讲,讨论了通过重用已离开视口的列表单元格,可以大幅减少页面上的视图数量


如果同时为多个属性建模,则将此技术与结合使用可减少变形脚本标记的数量。另外,考虑使用<代码> {{un束缚}} /代码>如果您不需要任何属性来进行更新。

这是一个通过重用DOM元素优化显示大量数据的烬视图:非常感谢您的响应迈克。余烬表告诉我,在一个表中显示大量od记录确实是可能的。您的建议帮助我调试了我的应用程序并发现了真正的问题。如果您能分享
真正的问题是什么,那就太好了!