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

标签 node.js internationalization express i18next

我进行了相当多的搜索,但找不到解决我的问题的方法。

我的应用程序使用 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文件未声明页面编码。因此,由浏览器自动检测它。无论这是否解决了问题,在 header 中声明页面编码都是一个很好的做法:

    meta(http-equiv="Content-Type",content="text/html; charset=utf-8")
    
  • Content-Type HTTP header 字段设置不正确。更改 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'});
    });
    

关于node.js - 如何让 i18next-node 以正确的方式显示变音符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18277858/

相关文章:

javascript - 按文件夹分组 Istanbul 尔代码覆盖率报告

PHP-ZendFramework : How to use Zend_Translate without the whole framework?

android - 将 I18n Iphone 文件转换为 Android

internationalization - 如何迭代地使用 xgettext 更新 .po 文件以进行翻译

javascript - 在客户端重用 JavaScript 代码(node.js、express)

javascript - Angular 渐进式 Web 应用程序在本地主机上工作但不在 IP 上

javascript - 如何为 node/mongo 创建一个正则表达式来查找不包含正则表达式的数据

node.js - 与 Promise.all 并行操作?

node.js - 将对象数组发布到 sails 导致 'TypeError: Cannot convert object to primitive value'

javascript - 从单独的路由文件中访问 express 'app' 对象的最佳方法是什么?