首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ZK -用ZUL EL中的map键连接一个具有常量字符串的变量。

ZK -用ZUL EL中的map键连接一个具有常量字符串的变量。
EN

Stack Overflow用户
提问于 2020-11-25 14:13:47
回答 1查看 374关注 0票数 0

有一个自定义翻译器对象在页面作用域中实现java.util.Map,我使用它如下

代码语言:javascript
复制
<checkbox id="cbCopy" label='${translator.copy}' />

它也适用于使用更复杂的EL映射语法的层次键:

代码语言:javascript
复制
<checkbox id="cbCopy" label='${translator['hierarchical.key.copy']}' />

当我在变量中有键时,它也能工作:

代码语言:javascript
复制
<zscript>
    desktopScope.put("someKey",sessionScope.get("customerCompany")+".copy");
</zscript>
<checkbox id="cbCopy" label='${translator[someKey]}' />

我的问题是如何在EL表达式中组合分层键,使变量和常量字符串让步:

代码语言:javascript
复制
<zscript>
    desktopScope.put("customerCompany",sessionScope.get("customerCompany")+".");
</zscript>
<checkbox id="cbCopy" label='${translator[customerCompany+'copy']}' /> <!-- DOES NOT WORK!!! -->

有可能吗?

原因是页面上的几个(但不是全部) ZUL组件需要这种组合的i18n键。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-26 04:10:01

从ZK 8开始,您可以将字符串与+=连接起来。

${translator[customerCompany+='copy']}

参考文献:https://github.com/zkoss/zkbooks/blob/master/developersreference/developersreference/src/main/webapp/uiComposing/elExpression.zul

在以前的版本中,您可以使用标记库

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65006420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档