我在我的应用程序中使用 EmberJS 和 Handlebars 来显示大量内容。在 Controller 内部,有一个保存数据的数组 stream
。基于该 stream
数组,选择特定模板以正确的方式显示单个条目。
现在我有不同类型的顺序来显示条目(例如按时间顺序、按用户顺序...)。在订单函数中,我必须根据条目的属性进行一些计算。当我更改顺序时,我调用 this.("stream").clear()
来清除数组,并以新顺序用旧条目填充它。 Ember 检测到更改并重新呈现 Handlebar 模板。
问题是,大约 1 秒(或者当列表中有更多条目时甚至更长),页面是空白的,然后出现新顺序的条目。所以我想知道,是否可以重新使用呈现的 View (内容不会改变)并使这个过程更快。
有没有办法告诉 Ember,将渲染的 View 保存在缓存或其他东西中?然后在插入 DOM 时重新使用它们?
最佳答案
View 重用是我们一直在努力的事情。我有一个分支,在 ListView 上做了一些工作,它很好地抽象了重用。
它存在于这个分支中: https://github.com/ebryn/ember.js/tree/list-view
感兴趣的文件是:
如果您正在寻找表格,Addepar 已发布 ember-table .
关于javascript - EmberJS + Handlebars : Re-Use rendered views,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14322431/