Expressjs语言库

时间:2011-12-08 11:09:07

标签: javascript node.js express

我想为expressjs制作一个语言模块。像codeigniters语言类的东西。 http://codeigniter.com/user_guide/libraries/language.html

这样用户就可以选择一种语言并加载相应的语言文件。我试图找出如何在expressjs中实现这一目标。或者那里有任何模块吗?任何想法或建议都表示赞赏。

1 个答案:

答案 0 :(得分:2)

您可以在应用程序中使用多个i18n modules,但如果需要,可以创建自己的{{3}}。

例如,创建一个文件夹/语言,在其中创建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")