-1
코드 사이에 어떤 차이 :
<zk>
<vbox r="@ref(1)">
<label value="${empty r}" />
<label value="@load(empty r)" />
</vbox>
</zk>
반환 :
true
false
$ {} @ref 작동하지()?
코드 사이에 어떤 차이 :
<zk>
<vbox r="@ref(1)">
<label value="${empty r}" />
<label value="@load(empty r)" />
</vbox>
</zk>
반환 :
true
false
$ {} @ref 작동하지()?
짧은 대답 : 아니오.
${...}
의 정적식이 한 번만 계산되기 때문에 값 자동 업데이트를 원하면 @load(...)
을 사용하십시오.
두 번째로 @ init/@ load의 bind 주석은 정적 EL 표현식보다 나중에 ZK Bind 라이프 사이클에서 계산됩니다.
ZK가 먼저 ${empty r}
을 시도하고 평가합니다.이 시점에서 r은 정의되어 있지 않으므로 ${empty r}
은 null입니다. 그러면 라이프 사이클의 후반부에 데이터 바인딩 주석 @이 처리됩니다.