12

我们即将开始在 Node.js 中构建我们的 Web 应用程序,我想为 i18n 做好准备,所以我正在寻找您在构建文本可翻译的 Node.js 应用程序方面的经验。

如果您有任何建议,我最好通过 Git 或其他工具使用像Pootle这样的工具。

4

1 回答 1

14

您可以在应用程序中使用许多i18n 模块,但如果需要,您可以创建自己的模块。

例如创建一个文件夹 /languages 并在其中创建 en.js、fr.js 等

it.js

module.exports = {
  "name": "nome",
  "age": "eta",
  .. etc
}

重要的是设置默认语言并在您网站的某处制作语言选择栏。当用户在您的应用程序中选择另一种语言(而不是英语)时,您可以执行以下操作:

app.get('/lang/:ln', function (req, res, next) {
  // remember the user's chosen language
  req.session.language = req.params.ln;
});

然后你可以有一个像这样的语言帮助函数:

translate = function (language, text) {
  // language array contains all the languages
  return language_array[language].text;
}
// example: translate(req.session.language, "age")
于 2012-01-23T16:09:01.083 回答