- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Zk 框架。我知道 @AfterCompose 和 @Init 注解的存在,但我不知道在 ViewModel 中使用它们时的差异和顺序。
有人可以解释一下这些差异吗?
例如,
@AfterCompose
public void init(@ContextParam(ContextType.VIEW) Component view) {
Selectors.wireComponents(view, this, false); // wire the components here
}
@Init
public void init() {
//do more things
}
谢谢
最佳答案
@init 和 @AfterCompose 之间的区别在于它们何时执行,而不在于它们将执行什么。这两种方法以类似的方式工作,在 View 模型中分配变量以及不依赖于组件创建的任何其他初始化任务。
ZUL 页面生命周期如下:
<强>1。页面初始化
<强>2。组件创建
它首先加载ZUL中分配的组件的属性
如果使用 ViewModel 属性将任何 View Model 分配给组件,则它会由 Binder 初始化并调用 init 方法
如果我们将某个方法标记为@init注释,那么它将在这里被调用。
组件创建完成后,它会调用 AfterCompose
如果我们将某个方法标记为@AfterCompose注释,那么它将在这里被调用。
<强>3。事件处理
<强>4。渲染
<小时/>@init:
@AfterCompose:
注意:建议使用 AfterCompose 而不是 init。因为它是在组件创建和 View 模型初始化之后调用的。
请参阅以下链接以获得更好的理解!!
https://www.zkoss.org/wiki/ZK_Developer%27s_Guide/Appendix/Component_Life_cycle/Table_of_Sequence
http://books.zkoss.org/zk-mvvm-book/8.0/syntax/viewmodelinit.html
http://books.zkoss.org/zk-mvvm-book/8.0/syntax/aftercompose.html
关于java - AfterCompose 与 Init ZK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41226108/
我正在使用 Zk 框架。我知道 @AfterCompose 和 @Init 注解的存在,但我不知道在 ViewModel 中使用它们时的差异和顺序。 有人可以解释一下这些差异吗? 例如, @After
我是一名优秀的程序员,十分优秀!