问题标签 [i18n-js]
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.
javascript - 如何禁用 i18n-js 的 keySeparator
我不知道如何禁用 i18n-js 的 keySeparator。在 i18next 中,它很简单:
i18n.init({keySeparator: false});
但是.init()
在 i18n-js 中无法识别该命令。该文档似乎没有涵盖任何启用/禁用 i18next 相同设置的方法,它仍然可能吗?
感谢您的任何帮助。
javascript - 从 json 文件导入时,如何使我的 i18n-js 文本正确呈现?
我在 React Native 和 Expo 托管工作流中开发了一个应用程序。我希望该应用程序能够以其他语言提供,因此我将 i18n-js 集成到该应用程序中。我按照在线教程解释了如何将 i18n-js 集成到我的应用程序中,但是导入单词的方式需要我在页面之间导航时按 Ctrl+S,否则会出现:
[缺少“en-US.word”翻译]
有没有人遇到过这个问题?
下面是我如何设置翻译,并将它们导入文件:
创建了一个名为“locales”的文件夹,它与我的文件位于同一位置(因此它是直接的 './' 导入。
在名为“en.json”和“fr.json”的文件夹中创建了 2 个文件
此文件中的翻译设置如下:
在同一文件夹中创建了一个名为“index.js”的文件
index.js 的设置如下:
- 将翻译导入给定文件:
npm - i18n-js 基于语言环境返回翻译
我刚开始使用这个库,但我还不能根据输入语言环境返回翻译字符串。我已经能够设置它并根据该i18n.locale = "en"
行获取字符串。
但是,想象一下这是我得到的以下简化翻译文件:
稍后,我可以通过以下方式检索本地化字符串
Buuuut,问题来了,如果我想welcome
在我想要的语言环境中显示该字符串?我希望我能够简单地做
但似乎我做不到。
有人知道可以支持这个用例的库(这个或另一个)吗?或者这个支持我的要求吗?
提前致谢。
ruby-on-rails - Sprocket 的要求如何工作?
我在 app/assets/javascripts 下有一个名为 application.js 的文件
i18n 实际上是我已经安装的 gem,我在 application.js 文件所在的同一文件夹中没有任何 i18n 文件,我已经在浏览器中看到该文件已成功连接到 application.js
我想知道这怎么可能?因为通常该文件应该在同一目录中。
react-native - i18n-js 不适用于对象 javascripts
我正在将 i18n-js 集成到我的 react-native 应用程序中,它工作正常。但是 i18n-js 不能在对象或嵌套对象中工作。我得到的信息是[missing "en.key" translation]
当我使用翻译功能时,此代码不起作用
javascript - 在 i18n-js 中的单词之间插入格式/组件
我在 React Native 应用程序中使用 i18n-js,还有 Expo 和expo-localization
. 尽管该库为翻译后的字符串提供了插值,但我没有找到在单词之间插入 React 或 React Native 组件或样式以提供更好格式的方法。
例如:
预期:此字符串中的单词将加粗
我得到了什么:
A word will be <B>bold</B> inside this string
如何为一些翻译的单词添加样式?
javascript - 如何设置 i18n.js 后备语言?
我正在使用i18n-js库。
为了设置其配置,我正在执行以下操作:
如您所见,为了设置翻译字典,我将其称为 getter:
为了建立备用语言,我只是想在我的应用程序语言数组中找到给定的语言环境(函数参数)。
如果它不在列表中,那么我使用 DAFAULT_APP_LANGUAGE 作为翻译。
这是设置 i18n.js 后备的典型或正确方法吗?
没有任何简单的方法可以做到这一点吗?
我的意思是,类似:
注意:我还需要为后备设置 isRTL 配置!