Ember.js在不锁定浏览器的情况下呈现大型列表

Ember.js在不锁定浏览器的情况下呈现大型列表,ember.js,handlebars.js,Ember.js,Handlebars.js,在客户端呈现大量项目时,我对Ember.js有哪些选择?分页是减少渲染时间的一种显而易见的方法,但是有没有其他技巧可以让您在javascript执行时渲染一个大的项目列表而不会出现明显的浏览器冻结?我在渲染大列表时发现了类似的性能问题 我的用例是呈现日志条目。我最终使用jQuery并直接写入DOM 这里有一个关于我是如何做到这一点的例子,下面是我的答案 长话短说,我得到了50张唱片,并将它们呈现在屏幕上。在屏幕底部,我有一个显示更多按钮。如果用户单击此按钮,我将在列表底部添加下一个50 请注意,

在客户端呈现大量项目时,我对Ember.js有哪些选择?分页是减少渲染时间的一种显而易见的方法,但是有没有其他技巧可以让您在javascript执行时渲染一个大的项目列表而不会出现明显的浏览器冻结?

我在渲染大列表时发现了类似的性能问题

我的用例是呈现日志条目。我最终使用jQuery并直接写入DOM

这里有一个关于我是如何做到这一点的例子,下面是我的答案

长话短说,我得到了50张唱片,并将它们呈现在屏幕上。在屏幕底部,我有一个显示更多按钮。如果用户单击此按钮,我将在列表底部添加下一个50

请注意,我的记录是只读的。如果我必须执行CRUD操作,我将恢复使用带有分页的集合。集合提供绑定支持,因此当用户编辑记录时,列表中的字段将自动更新。这是关于积垢的操作

我的代码在被重命名为EmberJS之前仍在使用SproutCore2。我认为您会发现大多数API都是相同的,只是名称空间需要更改

希望这有帮助。

查看列表

桌子


我尝试了一百万种不同的方式来呈现列表和模板,但都没有效果,所以希望这能帮助一些人。

我加载850个项目的速度很慢。而且我运行的硬件比运行chrome的平均硬件还要多。我希望它会很快。我已经从github更新了我的ember.js,现在速度提高了很多,我的大约有6个月了。同时也发生了很多事情。浏览器的锁定主要是由渲染造成的。@Stephan,谢谢你的指针。即使从0.9.5=>0.9.6也有显著的性能提升