ember js subviews和didinsertelement事件

时间:2012-04-19 20:45:40

标签: view ember.js

我正在编写Ember.View,它将树结构转换为菜单。我需要递归,所以我在视图模板中使用的是{{view}}帮助器,它递归地调用自身来构建嵌套的<ul><li>结构。

我需要的是一个钩子来调用一些jQuery插件来将这个结构转换为菜单。当我从didInsertElement事件调用插件时,子视图尚未呈现。如何在所有子视图完成渲染后运行代码?

2 个答案:

答案 0 :(得分:3)

尝试在Ember.run.next()中调用插件,该插件应在当前运行循环完成后调用它...我相信在创建所有子视图之前不会发生这种情况。

文档 - &gt; http://docs.emberjs.com/symbols/Ember.run.html

答案 1 :(得分:0)

这可能对您的情况有所帮助,我made a handlebars helper会告诉您子部分何时渲染。默认情况下,它会向您的视图对象发送一个事件,因此每个实例化视图在呈现时都会收到一个事件。