服务器端国际化与客户端?

时间:2013-06-04 12:54:52

标签: javascript internationalization handlebars.js

我非常清楚如何组织服务器端国际化 - 检测语言首选项并在处理请求页面的HTML中打印相应的翻译字符串。

但是,在客户端进行此操作不应该更合适吗?应该如何组织?我在考虑

  1. 检测JavaScript中的语言首选项
  2. 请求语言文件
  3. 打印页面上的字符串
  4. 我在弄清楚最后一部分时遇到了问题:在页面上打印字符串。我们使用Handlebars,我们的页面结构如下:

    <body>
    <h1>TEXT_1</h1>
    <script type="text/template">
    Some {{copy}} goes here
    </script>
    <p>TEXT_2</p>
    <script type="text/template">
    Some other {{othercopy}} goes here
    </script>
    ... and so on
    

    现在,对于TEXT_1和TEXT_2,我必须创建一个单独的模板吗?我如何翻译模板中的字符串?我无法将Some {{copy}} goes here替换为{{lang.copy_of_template1}},因为{{copy}}不会展开。

    这就是说客户端i18n的努力吗?

1 个答案:

答案 0 :(得分:1)

做客户端i18n正在增长 - 因为在Web中实现客户端应用程序变得更加成熟。

你可能会受到http://i18next.com/docs/

的启发