我正试图绕过connectOutlet方法,并且当从connectOutet返回的视图实际插入到DOM中时。
在connectOutlet中创建的视图使connectOutlet处于preRender状态。
connectOutlet: function(name, context) {
// method body
view = this.createOutletView(outletName, viewClass);
if (controller) { set(view, 'controller', controller); }
set(this, outletName, view);
return view;
}
我没有追踪视图插入Dom的位置或时间,视图转换为inDom状态。
我怀疑runloop正在运行,并且在当前runloop完成后它会转换。
任何人都可以对此有所了解吗?
答案 0 :(得分:2)
运行循环确实在这里发挥作用。运行循环通过排出有序的队列集合来处理事件。按顺序排列:sync
,actions
,render
,afterRender
,destroy
和timers
。视图呈现是视图实际插入DOM的位置,它始终在render
队列上进行调度。
如果您对此有其他疑问,请发表评论,我很乐意将此答案扩展至涵盖范围。