afterLayout和layout,afterRender和render之类的事件之间有什么区别?我了解beforeLayout和afterLayout之间的区别-但是布局事件有何不同?
最佳答案
注意:仅适用于Ext3.x。这个问题在2010年得到了回答。
没有'layout'事件,只有afterLayout
。从文档中,afterLayout“在此容器中的组件由关联的布局管理器安排时触发”,这是不言而喻的。 afterLayout
仅由负责布局子组件的Container子类触发。
另一方面,所有Component子类(包括Container)都会触发render
和afterRender
事件。基本的区别只是afterRender
在以后触发。在DOM标记完成渲染之后,但在渲染过程中可能发生的其他事情(例如隐藏,禁用,状态还原等)之前,会触发render
。完成所有操作后,afterRender
将触发为最后一个事件。为了完全理解这一点,您应该查看Ext.Component.render()
方法的源代码,该方法逐步显示了渲染过程的工作方式以及何时触发这些事件。