我正在编写Ember.View
,它将树结构转换为菜单。我需要递归,所以我在视图模板中使用的是{{view}}
帮助器,它递归地调用自身来构建嵌套的<ul><li>
结构。
我需要的是一个钩子来调用一些jQuery插件来将这个结构转换为菜单。当我从didInsertElement
事件调用插件时,子视图尚未呈现。如何在所有子视图完成渲染后运行代码?
答案 0 :(得分:3)
尝试在Ember.run.next()中调用插件,该插件应在当前运行循环完成后调用它...我相信在创建所有子视图之前不会发生这种情况。
答案 1 :(得分:0)
这可能对您的情况有所帮助,我made a handlebars helper会告诉您子部分何时渲染。默认情况下,它会向您的视图对象发送一个事件,因此每个实例化视图在呈现时都会收到一个事件。