问题标签 [i18n-node]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
715 浏览

node.js - 如何使用 Sails.js 获得非平凡的 i18n 翻译?

使用Sails.js版本0.10.x并尝试让 i18n 的东西工作。

我有以下内容config/locales/en.json

我的config/i18n.js文件看起来像

在我的控制器中,我试图通过检索正确的subnationalDivision名称

但这只是给了我"countries.au.subnationalDivisions.ACT",而不是"Australian Capital Territory"

我检查了一个简单的例子:

给定en.json文件包含{ "bingo" : "sparky" },res.i18n("bingo")输出"sparky"

但是,尽管i18n-node 文档中有说明,但使用的示例objectNotation不起作用。

我应该如何让它工作?

0 投票
1 回答
1100 浏览

javascript - 在服务器端 express 应用程序中使用 i18n-node

我不知道应该如何在我的应用程序中使用 i18n-node 模块。

在视图中,对于静态文本,这很容易,它工作得很好但是......

这是我的问题:

有时我必须设置一些错误消息或其他内容,例如:

然后我必须将此消息发送到我的视图,例如:

但是首先,我的消息"Unknown user %s"只会设置在默认语言json文件中,然后即使我放入"Unknown user %s": "Something in the client language"客户端语言json文件,它仍然会显示"Unknown user myUserLogin".

有人有一个很好的工作例子可以分享吗?

编辑:因为翻译字符串中有一个变量,我不能这样做:

因为它将"Unknown user myUserLogin"在客户端语言 json 文件中设置,而不是"Unknown user %s"...

0 投票
3 回答
3276 浏览

html - node.js:有没有办法将 HTML 放入 i18n-node JSON 翻译文件中?

这个问题说明了一切。如果我将 HTML 直接放入(JSON 格式的)翻译文件中,如下所示:

我在我的 HTML 中得到了这个:

我也尝试在我的翻译文件中结合这个:

在我的 HTML 中有这个:

但得到了类似的结果。

我唯一能开始工作的就是这种笨拙:

有了这个:

但这太麻烦了,几乎不值得做,而且某些语言中的词序会迫使我在翻译文件中放入一些空字符串,i18n-node 似乎不喜欢它,因为它吐出了密钥(属性)遇到空字符串时的名称。

我还尝试在符号前使用“\”作为转义字符,但是当我升起风帆(重新启动服务器)时出现无效的 JSON 错误。

任何想法,解决方法?我正在使用sails.js,这不是我的决定,但我坚持使用它,它带有i18n-node。在这个项目上考虑使用另一个库有点晚了,但并非完全不可能。

0 投票
1 回答
1550 浏览

javascript - 如何本地化 node.js 应用程序,每个区域设置不同的单词定位混合静态和动态本地化文本?

我有一个 node.js express 4 网络应用程序,我需要翻译并以多种语言显示。我正在学习在车把中使用 i18n-node 包。一些本地化文本数据来自 db(动态数据),一些来自使用 i18n-node 的静态文本 json 文件。作为参考,我将使用以下句子:“嘿,{Londoners}!从 {3 月 29} 日开始的下一个春假去 {Paris} 怎么样,认识一些 {parisians} 并学习如何烹饪 {parisian } 甜点?” 我的问题是:您如何处理各种语言中的不同语法,这些语法会改变静态单词和动态注入单词的单词顺序?

0 投票
1 回答
865 浏览

node.js - 如何使用 i18n-node 在模块化 express 应用程序中划分语言环境文件?

我正在使用 i18n-node 翻译多语言快速网络应用程序。i18n-node 包允许您为包含应用程序 UI 中的所有字符串的所有语言环境 json 文件指定一个文件夹。假设应用程序变得越来越大,能够将包含所有应用程序字符串的长单片语言区域设置 json 划分为单独的文件是理想的,每个文件都将驻留在其自定义模块文件夹中。有没有办法指定多个语言环境文件夹/文件?干杯半开

0 投票
4 回答
4736 浏览

node.js - Express 和 i18n 默认语言环境不起作用

我正在尝试设置 i18n-node 和 Expressjs。我的conf是这样的:

// i18n 配置 =============================================== ===========

lang/ 文件夹 en.json 和 es.json 上有 2 个语言环境,我可以在它们之间切换没问题,但 express 总是默认加载 es.json,不知何故忽略了 conf 中的 defaultLocale: 'en'。

有任何想法吗?

提前致谢!

0 投票
1 回答
120 浏览

javascript - nodejs中的路径

我在 nodeJs 中遇到路径问题,当他在 url 中指定语言时,我将用户路由到索引页面,如下所示:

但是,在我的 index.html 页面中,图像的来源是这样指定的: ./images/img1.png ,当我路由用户时,我的 index.html 显示找不到图像,因为它考虑了路径“ lang/images/img1 .png ,它考虑了我网址中的语言,你能帮忙吗?

谢谢

0 投票
0 回答
83 浏览

internationalization - 来自 ajax 的 i18n 玉模板在风帆中调用

我的sails+jade 应用程序遇到i18n 问题。在ajax调用后加载模板时,__和__n函数不可见,但我不明白为什么?

我已经包装了jade.renderFile 调用并发送了请求对象,所以jade 模板在选项对象中获取了__ 和__n 函数。

我只能使用 __ 虽然我都通过了,因为只有 __ 在帆的 18n 钩子中全局暴露。

编辑:我通过要求sails/node_modules/i18n 并将__n 函数从包装器传递给模板来管理一个肮脏的解决方法以使其工作。

我仍然不明白为什么这两个功能都没有公开。

任何帮助或提示或解释表示赞赏

0 投票
0 回答
345 浏览

json - 如何在 i18n-node 中创建一个文件夹并拥有多个相同语言的 json 文件?

我看过一个coursera 的视频,演讲者说在 locales 文件夹中,他们有每种语言的文件夹,在文件夹 language 中,每个页面都有 json 文件。

所以我的问题是如何在 i18n 中实现它?

模式示例:

谢谢!

0 投票
2 回答
1989 浏览

javascript - 动态添加文本的 i18n 翻译

刚开始使用 i18n 在 Node.js 中翻译我的网站。我有点不知道如何翻译在加载 DOM 和渲染玉文件后生成的文本(比如在用户单击按钮后)。

我知道 i18n 是一个服务器端模块,我生成的新文本在客户端。

如果有帮助,我也在运行快递。

我想要做的是能够在客户端翻译由 javascript 生成的文本。考虑一个任意按钮:

  1. 翡翠通过 i18n 使用 (i18n.__('Reply')) 渲染的第一个按钮文本并正确翻译
  2. 用户点击按钮
  3. 文本通过 jQuery 更改为“Sending”,并在 AJAX 请求后返回“Reply”
  4. 按钮文本不再翻译,因为它是动态生成的

有没有办法在客户端使用 i18n 来解决这个问题?在最理想的情况下,我只想在客户端执行此操作,但它不起作用: