我正在研究Rails Web应用程序上的ruby,其中我们将Rails I18njs gem用于js翻译。在我的浏览器源代码中,我可以看到所有语言环境的js转换键均已呈现。有什么方法可以将其限制为仅用户区域设置和后备区域设置。
宝石名称:i18n-js
答案 0 :(得分:0)
如果设置了I18n.available_locales
(例如在您的Rails config / application.rb文件中),那么将仅导出指定的语言环境。
将您的语言环境设置为:
I18n.defaultLocale = "pt-BR";
I18n.locale = "pt-BR";
I18n.currentLocale();
// pt-BR
注意:您现在可以像这样加载I18n之前应用您的配置:
I18n = {} // You must define this object in top namespace, which should be `window`
I18n.defaultLocale = "pt-BR";
I18n.locale = "pt-BR";
// Load I18n from `i18n.js`, `application.js` or whatever
I18n.currentLocale();
// pt-BR
在此处查看更多详细信息:https://github.com/fnando/i18n-js
答案 1 :(得分:0)
您需要从将所有翻译加载到单个$("span[name^='question']").click(function(){
alert('test')
});
文件中的默认设置切换为export configuration
这是一个非常简单的配置,它将每种语言导出到单独的语言环境文件中:
config / i18n-js.yml
translations.js
然后,您可以像这样从布局中仅加载所需的语言:
app / views / layouts / application.html.erb
# bake fallbacks into each locale file.
fallbacks: true
# split translations into separate files per-locale
translations:
- file: "public/javascripts/i18n/%{locale}.js"
only: '*'