问题标签 [i18next-http-backend]

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 投票
2 回答
1386 浏览

reactjs - i18n 从 s3bucket 加载翻译

i18n在我的 React 应用程序中使用该模块,该模块作为应用程序(我将其称为实时应用程序)托管S3cloudfront位于其前面。

我想将 s3 url 存储在配置文件中,以避免在我的应用程序中对其进行硬编码,以便在public/locales开发时可以处理本地存储在文件夹中的翻译文件。

最初,我设置了后端选项,以便它始终尝试查找locales路径中的文件。这在本地工作,但在 S3 上停止工作,尽管 locales 文件夹存在于 S3 存储桶中。我还注意到应用程序没有发送任何请求来检索翻译文件。

然后我决定将翻译文件上传到另一个 S3 存储桶并将它们托管在那里,看看这是否能解决问题。我将配置更改为对 s3 存储桶路径进行硬编码。这在本地和实时应用程序上都有效。但这意味着我不能使用我的配置文件来确定 loadPath 选项。

然后我想我可以这样构建 url:

奇怪的是,这在本地工作时AWS_CONFIG.aws_app_translations_pathhttp://localhost:3000/locales<myhardcoded-s3-bucket-url>。但是,一旦我将其推送到现场,它又失败了。这次提出请求https://<my-apps-base-path>/undefined/en-GB/translation.json,例如。所以它试图使用应用程序路径并附加我在loadPath.

然后我看到我可以loadPath作为一个函数来构造我的 url。这也不适用于实时应用程序,但再次在本地工作。

这是我的整个i18n文件

什么可以解释这种奇怪的行为?我在这里缺少配置吗?

0 投票
1 回答
554 浏览

i18next - I18next 使用捆绑的翻译文件在本地加载翻译

有没有办法让我从与我的 js 文件捆绑的翻译 json 文件中加载翻译?

我只需要介绍几种语言,并且由于限制,无法设置后端端点。

我知道 addResourceBundle 功能,但这样做没有成功。

我有翻译文件english.json , spanish.json

似乎不起作用。

0 投票
1 回答
264 浏览

javascript - 服务器以“应用程序/节点”的非 JavaScript MIME 类型响应

我正在尝试使用 i18next 在我的网站上设置本地化。我正在使用以下脚本(现在大部分来自实际的 i18next 网站),但后端的导入会引发错误。

错误:

我什至不知道我是否正确导入了这些东西。我很感激任何帮助。谢谢你。

0 投票
1 回答
831 浏览

create-react-app - 创建 React 应用程序 - 从相对路径加载 i18n 翻译

homepage我的 React 应用程序通过在 package.json 中设置变量从相对路径加载。但是 i18next-http-backend 仍然尝试从而http://localhost:3000/locales/en/translation.json不是加载翻译http://localhost:3000/myapp/locales/en/translation.json。我什至尝试设置 loadPath 选项(虽然不确定语法),但这不起作用。请看下面:

我怎样才能使这项工作?

0 投票
2 回答
141 浏览

internationalization - i18next 与 HttpBackend,Trans 在初始化完成之前寻找密钥

我正在使用 HttpBackend 动态加载翻译但是在我的组件中,我使用 Trans 组件,并且它在尖叫缺少翻译键,我还看到 init 在尝试访问 Trans 组件后完成。我的应用程序有一个暂停,为什么会发生这种情况?

我进入控制台: i18next::translator: missingKey en translation myKey 这是其中包含 a 的文本
.... init 发生在之后。

我怎样才能解决这个问题?

有问题的组件:

0 投票
0 回答
756 浏览

reactjs - Webpack 5 / i18next - 模块解析失败:“import”和“export”可能只出现在“sourceType:module”中

将Webpack从版本4升级到 5 后,我无法构建和启动纱线服务器。一个不想合作的包是i18next-http-backend。我试图一次编译 JS 和 TS 文件。

网络包配置:

它给了我这个错误:

我应该更改我的 Webpack 配置文件以使其工作吗?

0 投票
0 回答
77 浏览

reactjs - react-i18next 循环结构转 JSON

我正在使用 react-i18next 和 i18next-http-backend 来国际化我的项目

有人可以告诉我为什么 backendConnector/backend 有这么多实例吗?

请检查这张图片

我有这样的错误

我只是想知道你能不能帮我解决这个问题

我的 i18n 代码是这个

0 投票
1 回答
134 浏览

internationalization - Spartacus Storefront 多站点 I18n 与后端

在进行 I18n 时,我们的 MultiSite Spartacus 设置遇到了一些问题。

  1. 我们希望为每个站点提供不同的翻译,因此我们将它们放在一个 API 上,该 API 可以返回依赖于 baseSite 的消息,例如:backend.org/baseSiteX/messages?group=common
    但是 Spartacus 设置不允许我们通过 baseSite?我们可以通过{{lng}}and {{ns}},但不能通过 baseSite。
    请参阅https://sap.github.io/spartacus-docs/i18n/#lazy-loading 我们可以通过覆盖i18nextInit来做到这一点,但我不确定如何实现这一点。

  2. 在文档中,它说您可以crossOrigin: true在配置中使用,但这似乎不起作用。类型检查说它不受支持,它仍然显示 uw CORS 问题

有人对这些问题有想法吗?

0 投票
1 回答
533 浏览

reactjs - 我收到此错误:尝试导入错误:“initReactI18next”未从“react-i18next”导出。这就是我的 i18next.js 文件的样子

这是我的 i18next.js 文件。我已经下载了所有依赖项,我想知道为什么会出现这个错误:

尝试导入错误:“initReactI18next”未从“react-i18next”导出。

0 投票
0 回答
65 浏览

node.js - i18next 将 en-US 语言环境映射到 en 命名空间文件夹/文件

抱歉,如果我没有正确地问这个问题,目前,我们的系统使用 i18nexti18next-http-backendi18next-browser-languagedetector. 当浏览器使用英语语言环境设置时,浏览器使用i18next-browser-languagedetector返回。en-US然而,nodejs 应用程序的设置i18next-http-backend方式是用英文为/public/locales/en/language.json. 现在的问题是,i18next 包依赖备用语言,因为en-US它不映射到 en ( /public/locales/en/) 命名空间/文件夹位置。

我知道,只需重命名文件夹或将后备语言更改为 en 就足够简单了。

但我觉得有一种方法可以映射这个或另一种我无法弄清楚并且无法在文档中找到的方法,所以我想知道它是否可能,当语言检测器检测到 en-US 语言环境时,它会映射到 /public/locales/en/ 位置

任何帮助表示赞赏,在此先感谢!