【问题标题】:Dojo Globalization and nls keysDojo 全球化和 nls 键
【发布时间】:2012-03-26 09:07:10
【问题描述】:

我有一个 DOJO nls 密钥文件,其中包含类似的条目

({

"name":"test",
"comma" : ", ",
"hello":"Hello",
"welcome_msg": this.name+this.comma+this.hello

})

我想让欢迎信息是"Hello, test",所以基本上想在这个值字段中使用上面定义的名称、逗号和hello键并创建字符串而不是直接使用。

有没有办法像this.comma 或 ${comma} 一样实现上述目标?基本上在法语和其他语言中,冒号和一些 spl 字符前后会有额外的空格,而在英语中只有一个空格......

在这方面的任何帮助将不胜感激..谢谢

【问题讨论】:

  • 如果你使用新的 AMD 风格的 NLS 文件,那么我认为你可以在其中放入任何你想要的代码。但是,正如克雷格的回答所建议的那样,您可能应该在简单方面犯错。

标签: javascript dojo globalization nls-lang


【解决方案1】:

我使用 dojo.replace。但我在小部件代码中使用它,而不是实际的 nls 文件。

var i18n = ...
var name = ...
dojo.replace('{0}{1} {2}', [i18n.hello, i18n.comma, name]);

但是,我不明白这对您要完成的工作有何帮助。为什么不留下欢迎信息

"welcome_msg": "Hello, {0}"

nls 文件是每种语言的,因此任何其他 nls 文件都将具有您需要的适当标点符号和间距。

【讨论】:

  • 我同意。作为一般经验法则,在涉及 NLS 内容时,始终使用字符串格式而不是串联。
  • Craig,你是对的,每种语言都会有一个单独的 NLS 文件。我只是想知道字符串连接是否有效?
猜你喜欢
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-11
相关资源
最近更新 更多