代码:
<zk>
<vbox r="@ref(1)">
<label value="${empty r}" />
<label value="@load(empty r)" />
</vbox>
</zk>
返回:
true
false
$ {}没有使用@ref()?
答案 0 :(得分:1)
简短回答:不,不是。
首先,如果您想要自动更新值,请使用@load(...)
,因为${...}
中的静态表达式只会被评估一次。
其次,绑定注释@ init / @ load后来在ZK Bind生命周期中计算,而不是静态EL表达式。
因此,ZK首先尝试并评估您的${empty r}
,此时r未定义,因此${empty r}
为空。
然后在生命周期的后期,它将处理数据绑定注释@。