2013-07-16 2 views
1

잠시 동안 다른 옵션을 시도한 후 i18next 1을 사용하여 브런치 및 백본 기반 웹 응용 프로그램을 국제화했습니다. 그러나 i18next를 초기화하여 응용 프로그램 전체에서 i18n 지원을 사용할 수있는 위치를 조금 고민하고 있습니다.i18next - 브런치 및 백본 설정

현재 내가 좋아하는 주요 Backbone.Marionette.Application로 초기화를 넣어 : 나는 오류를 얻을하지 않습니다 및 번역 파일이 제대로로드되어 있지만, 나는 문자열을 얻을 수 없었다

@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> 

.

어떻게 처리할까요?

답변

1

앱 초기화 프로그램에서 초기화해야합니다. 누락 된 것은 실제로 i18next 라이브러리를 사용하여 렌더링 된 뷰에 적용하는 것입니다. 당신은 마리오네트에서보기를 사용하는 경우

, 당신은 방법을하는 onRender 제공 할 수 있습니다.

onRender: function() { 
    this.$el.i18n(); 
} 

직접 뷰를 렌더링하는 경우 이 $의 el.i18n()를 추가하려고; 렌더 메서드의 끝에.

+0

안녕하세요, 대단합니다. -이 링크는 누락되었습니다. 감사합니다. – tomw