我使用 Ember.js (1.0. RC) 并希望将 Isotope.js 的功能应用于我位于“容器”中的一些视图。
所以我的路由基本上从服务器加载包含所需数据的模型,设置控制器的内容并将其绑定到模型的数据,效果很好。
接下来,我为我的 IndexRoute 声明了一个模板,它遍历所有加载的项目,如下所示:
{{each item in this itemViewClass="App.ItemView"}}
这些项目是应该使用 isotope.js 过滤的图像。ItemView 暂时只是指一个简单的模板。
执行链如下:路由 -> 获取模型数据 -> 设置控制器 -> 创建 IndexView -> 将所有 ItemViews 堆积在一个 DIV 容器中。
现在我需要检查是否所有的 ItemViews 都已加载并且渲染是否最终完成以应用 isotope.js 的过滤功能,但我不知道该怎么做。
IndexViewdidInsertElement
事件在它被渲染并且在 ItemViews 添加到 DOM 之前立即触发。
如果我不通过模型获取数据而是将其硬编码到变量中,我已经尝试设置一个ContainerView
可以与之结合使用的方法。Ember.run.scheduleOnce("afterRender"...)
content
这个CollectionView
练习也对我不利。
任何想法如何解决这种痛苦?我真的很感激。谢谢。