【问题标题】:Best Practice: Website Localizations containing HTML最佳实践:包含 HTML 的网站本地化
【发布时间】:2013-10-18 15:29:33
【问题描述】:

我正在使用需要支持国际化的 Ember / Handlebars 开发 Javascript MVC 网站。我已经有了进行翻译的代码,但我很好奇本地化大块文本(多段、列表等)的最佳实践是什么。分别本地化每个段落、列表项还是让本地化包含 HTML 更好?

HTML:

<p>{{i18n first_paragraph}}</p>
<p>{{i18n second_paragraph}}</p>
<ul>
  <li>{{i18n first_item}}</li>
  <li>{{i18n second_item}}</li>
  <li>{{i18n third_item}}</li>
</ul>

本地化文件:

first_paragraph: 'some text',
second_paragraph: 'some text',
first_item: 'some text',
second_item: 'some text',
third_item: 'some text'

VS.

HTML:

{{i18n page_content}}

本地化文件:

page_content: '<p>some text</p><p>some text</p><ul><li>some text</li><li>some text</li><li>some text</li></ul>

感谢您的建议

【问题讨论】:

  • 我不想在本地化文件中看到 html

标签: javascript html ember.js internationalization


【解决方案1】:

第一个选项更加规范。为什么?因为您正在从语义标记中抽象出本地化(这是对数据实体执行的逻辑:在本地化情况下是字符串)。

现在这似乎并不重要,但是当您突然想要支持另一种语言时会发生什么?如果您已将本地化抽象为 - 在您的情况下 - Handlebars Helper,您可以在该 Helper 内的数组中添加翻译。如果您的本地化与您的标记混淆,那么您将不得不以一种草率(耗时且容易出错)的方式浏览您的本地化文件。

【讨论】:

  • 谢谢,我倾向于这个。
猜你喜欢
  • 1970-01-01
  • 2010-10-11
  • 2015-12-10
  • 2011-04-07
  • 1970-01-01
  • 1970-01-01
  • 2010-12-17
  • 2010-11-10
  • 2012-02-09
相关资源
最近更新 更多