Backbone.js i18next-早午餐和主干网设置
在搜索了一段时间并尝试了不同的选项后,我决定使用i18next将一个基于早午餐和主干网的web应用程序国际化。然而,我有点纠结于在哪里初始化i18n,然后在整个应用程序中提供i18n支持 目前,我将初始化放在main Backbone.marionete.Application中,如下所示:Backbone.js i18next-早午餐和主干网设置,backbone.js,marionette,brunch,i18next,Backbone.js,Marionette,Brunch,I18next,在搜索了一段时间并尝试了不同的选项后,我决定使用i18next将一个基于早午餐和主干网的web应用程序国际化。然而,我有点纠结于在哪里初始化i18n,然后在整个应用程序中提供i18n支持 目前,我将初始化放在main Backbone.marionete.Application中,如下所示: @addInitializer (options) -> Media = require 'models/media' Router = require 'lib/router' @m
@addInitializer (options) ->
Media = require 'models/media'
Router = require 'lib/router'
@media = new Media
# setup routing and html5 history
$.i18n.init
lng: 'en-Us'
fallbackLng: 'en'
debug: true
, (t) =>
console.log 'i18n initialized'
@router = new Router controller: this
Backbone.history.start()
虽然我没有收到任何错误,并且翻译文件已正确加载,但我无法翻译字符串
相应的html如下所示:
<h5 data-i18n="title-text.unnamedtitle" class="title-text"></h5>
与翻译文件中的标题文本键匹配
你知道怎么处理吗 应用初始化器内部的初始化应该可以。缺少的是实际使用i18next库并将其应用于渲染视图 如果使用来自木偶网的视图,则可以提供onRender方法:
onRender: function() {
this.$el.i18n();
}
如果直接渲染视图,请尝试添加此选项。$el.i18n();到渲染方法的结尾。应用程序初始值设定项内部的初始化应该可以。缺少的是实际使用i18next库并将其应用于渲染视图 如果使用来自木偶网的视图,则可以提供onRender方法:
onRender: function() {
this.$el.i18n();
}
如果直接渲染视图,请尝试添加此选项。$el.i18n();到渲染方法的末尾