如何让i18next-node以正确的方式显示变音符号?

我search了很多,但找不到我的问题的解决scheme。

我的应用程序使用i18next,除了一个问题,它工作正常:德语变音符号(ü,ö,ä)显示为 。

我不明白是我错了,因为这个示例应用程序没有与变音器的问题: http ://i18next-example1.eu01.aws.af.cm/?setLng=de- DE (github: https:// github.com/rbeere/i18next-jade-express-sample )

我怎样才能找出这一个呢?

罪魁祸首可能是:

  • Translation.json文件不保存为UTF8。
  • 如果使用任何特定的字体,他们的Unicode支持是非常有限的(这是现代字体不太可能)。
  • layout.jade文件不声明页面编码。 因此,浏览器自动检测它。 不pipe这是否解决了问题,在头文件中声明页面编码是一个好习惯:

     meta(http-equiv="Content-Type",content="text/html; charset=utf-8") 
  • Content-Type HTTP标题字段设置不正确。 更改HTTP响应如下:

     app.get('/', function(req, res) { res.header("Content-Type", "text/html; charset=utf-8"); res.render('index', { title: 'Localization with Express, Jade and i18next-node'}); });