根据网址为网站提供多种语言

时间:2019-12-23 19:33:58

标签: javascript html node.js express ejs

我正在考虑如何为使用ExpressJS和NodeJS以及EJS作为模板引擎编写的个人网站提供多语言支持。目前,该网站仅提供英语版本,但我也想提供德语版本。我想通过使用URL变量来做到这一点,例如

example.com/en/home-以英语显示主页

example.com/de/home-以德语显示主页

带有两个按钮的部分由德语和英国国旗表示,应该可以在这两种语言之间进行切换。

已经想到了什么?

我已经考虑过在我的views目录中创建多个文件夹,每种语言一个,包含所有相同的文档,但是使用不同的语言,并根据路线中选择的语言提供适当的文档。但这将导致我的HTTP文档和路由重复,这可能不是解决此问题的好方法,因为它违反了“不要重复自己”的规则。

任何人都可以给我一些建议以更好地解决此问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我的建议是只为您的视图保留一个模板,因为重复的数量很快就会失控。

您可以使用此节点包来做国际化的事情i18n-node,它可以与expressJs集成在一起

如果您想知道它是如何工作的,可以通过Michael DeRazoni18n for Node + Express

对其进行出色的解释