问题标签 [ember-i18n]

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 回答
525 浏览

ember.js - 为翻译提供静态 json 文件

我正在使用ember-i18n翻译,我正在尝试按照ember-i18n wiki中的描述实时获取翻译, 而不是从后端加载翻译,而是从静态文件加载它们。我已将文件放在文件lang.json夹中/public/i18n/,并使用服务检索它们:

lang.json 文件只包含 json:

在开发中它就像一个魅力,但我在运行测试时遇到了一些问题。检索到的 json 包含lang.json文件的内容,但它没有加载到i18n服务中(例如,如果我运行测试,-s我看到missing translation xxx到处都可以看到。

此外,测试执行变得越来越慢,并且在 10-15 次测试之后,它会抛出超时错误。

我是在做一些不应该做的事情,还是我错过了什么?谢谢

我正在使用:
ember-cli:2.6.2
ember:~2.6.0
ember-i18n:~4.2.1

0 投票
1 回答
138 浏览

ember.js - ember-intl 在构建时为项目添加了 600 多种不同语言的 json

我们在项目中使用 ember-intl。但是,当我们使用 构建项目时ember build --environment=production,ember-intl 添加了 600 多个翻译文件。

我想选择我们支持的语言,我不想添加我们不需要的 17mb 的 json 文件。

有什么配置吗?

0 投票
1 回答
546 浏览

ember.js - ember-i18n 翻译带有双花括号的文本

如何翻译此 Ember 模板文本:

<p>The {{user.name}}'s tasks in "{{project.name}}"</p>

更新

问题已经解决了:

在模板中:

{{t "The (user.name)'s tasks in '(project.name)'" username=user.name projectname=project.name}}

在翻译中:

0 投票
1 回答
2482 浏览

ember.js - 错误:尝试注入未知注入:“服务:i18n”

我对 ember-i18n 有以下问题:

我在 ember 引擎中使用 ember-i18n 插件。我的 i18n 初始化程序addon/instance-initializers/i18n.js

在我的索引路由(routes/index.js)中,我有以下代码:

如何申报 i18n 服务?

我使用 ember-18n 4.5.0 版本和 2.10.0 ember-cli 版本。

0 投票
1 回答
588 浏览

ember.js - ember-i18n 未找到默认语言环境;回到“en”

我收到了 ember-i18n (ember-i18n: 5.0.0) 的警告

我在 environment.js 中设置了 defaultLocale: 'en' (如 ember-i18n 文档中所提到的),但仍然是它的人口警告。

//环境.js

//package.json

//app/initializer/i18n.js

提前感谢您的帮助。

0 投票
1 回答
546 浏览

ember.js - Ember-i18n 缺少翻译:它不适用于 Ember Twiddle 示例

我不知道为什么,但无法让插件 Ember-i18n 工作,我错了什么?

你可以在https://canary.ember-twiddle.com/736ba26820e429cd683a5eb54416996b?openFiles=routes.application.js%2C下看到我的 Ember Twiddle

0 投票
0 回答
52 浏览

javascript - 如何使用 Ember 从 URL 获取动态路由?

如何使用 i18n 在 Ember 中获取当前路由器名称?

我正在尝试制作一个带有一些语言的应用程序,我需要将用户发送到来自 URL 的路由。

路线是动态的(请参阅Twiddle),我无法获得正确的路线。

例如:/pt-br/sobre

Ember 不会将用户发送到 lang.about 路径。

0 投票
1 回答
506 浏览

ember.js - 使用 ember-intl 和 ember-i18n

我正在使用 ember-i18n 进行翻译。我安装了 ember-intl 以在应用程序中格式化日期。两个插件都有相同的助手 {{t 'hello.world'}}。如何单独使用 ember-i18n 进行翻译,使用 ember-intl 进行日期格式化?

0 投票
2 回答
172 浏览

javascript - i18n - 如何在 application.hbs 中使用它?

我应该在哪个路由/组件中注入“i18n”服务以便在 application.hbs 中使用它?我正在尝试在其他 HBS 文件中使用它,如果我将“i18n”注入到路由/组件中 - 我可以使用它。

但它只是在 application.hbs 中不起作用

0 投票
1 回答
100 浏览

javascript - Ember.js 在语言环境更改时重新呈现链接

我的应用程序使用了 ember-i18n 插件。出于 SEO 的目的,我想在 URL 中添加 /[lang-code]/。

更改语言时,history.pushState 可以更改 URL 并且可以,但是页面上的链接不会更改为新语言,即使 router.rootURL 更改。

到目前为止,我只能更改 window.location.pathname,但正在发出新的网络请求。

我尝试覆盖 href-to 助手(来自 ember-href-to 插件)并添加了这个:

它在语言环境更改时执行,但显然重新计算什么都不做。即使使用 setTimeout (因为也许 rootURL 还没有改变)。链接都是一样的。

你有什么建议吗?将不胜感激!谢谢!!