con*_*ile 2 html javascript java gwt locale
我在模块xml文件中定义了以下语言环境:
<extend-property name="locale" values="en, en_US, en_GB"/>
<extend-property name="locale" values="de, de_DE" />
Run Code Online (Sandbox Code Playgroud)
如何只为en,en_US,en_GB和de,de_DE的一个排列获得一个排列?
用于合并不同属性值的排列的GWT方式称为SoftPermutations:
<collapse-property name="locale" values="en, en_US, en_GB" />
<collapse-property name="locale" values="de, de_DE" />
Run Code Online (Sandbox Code Playgroud)
EDITED
关于使用所有语言环境而不是为每种语言选择一种语言环境的好处,您可以利用所有这些语言的差异,这对用户来说非常重要.
认为GWT包含一个完整的i18n堆栈(基于CLDR),用于国际化数字,日期,复数等,并且显示'en'日期选择器与'en_GB'日期选择器不同,因为欧洲人使用星期一作为第一星期几而不是星期日.
最终排列中javascript的增量并不重要(很少KB),因为只有那些细微差别必须包含在内,因为大多数属性都是在相似语言之间共享的.
当然,您只需要根据所支持的语言翻译您的应用程序,例如您在'en'中编写所有应用程序消息,因为当找不到消息时'en_GB'将回退到'en',但您仍然保留选项如果需要,可以更改一些消息.
许多人在GWT中使用语言环境做的事情就是将所有这些语言组合在一起,以避免排列爆炸<collapse-property name="locale" values="*" />并缩短编译时间.你必须把该行出来的时候,你提供你的应用程序进行生产通常每交付周期发生一次的选项,您可以留下您的CI服务器编译所有排列.
| 归档时间: |
|
| 查看次数: |
410 次 |
| 最近记录: |