Node.js 多语言快速应用程序
我想知道在express中,在同一版面中实现相同内容的多个版本/语言的最佳方式是什么 我应该这么做吗Node.js 多语言快速应用程序,node.js,express,pug,Node.js,Express,Pug,我想知道在express中,在同一版面中实现相同内容的多个版本/语言的最佳方式是什么 我应该这么做吗 app.get("/", function(req, res) { res.render(language + "/index"); }); 或者有更聪明/更好的方法吗?我建议只保留一个模板,就好像每种语言使用一个模板一样,它很快就会失控,更不用说复制太多内容了(还有你在模板中放入的少量“逻辑”)。许多应用程序使用名为gettext的工具来实现国际化。在中有一个node.js库 或者也
app.get("/", function(req, res) {
res.render(language + "/index");
});
或者有更聪明/更好的方法吗?我建议只保留一个模板,就好像每种语言使用一个模板一样,它很快就会失控,更不用说复制太多内容了(还有你在模板中放入的少量“逻辑”)。许多应用程序使用名为gettext的工具来实现国际化。在中有一个node.js库
或者也有。它似乎与express js有更多的集成。我认为我们可以在lang文件夹中定义json对象,如en.js、fr.js,这个json文件包含键值对,而不是根据用户的语言设置渲染到模板中,lang设置可以放入数据库中 我们可以将这个fr.js或其他任何内容保存到res.locals中,以便调用每个模板 这是否合适?这是您应该使用的最简单和最好的模块。您可以直接在Javascript代码中使用,也可以使用带有express js的Jade/Handlebar模板 为什么要使用i18n
- 根据您的设置,通过标题、cookie或查询参数从浏览器自动检测区域设置
- 它还提供了一些例子
- 默认情况下,它会在
内部自动生成/locales/
。这将作为主文件,供您开始构建新的翻译en.json
- 支持单数和复数形式
- 对参数的支持:
返回
Hallo-Marcus