2013-08-02 2 views
0

저는 i18next를 사용하고 있으며 훌륭하다고 생각합니다. Backbone 및 Underscore 템플릿과 함께 사용하고 있습니다. 내 상황을 설명해 드리겠습니다. 응용 프로그램이 시작되자 마자 i18n을 초기화 한 다음 백본 ​​기록을 시작합니다. 따라서 응용 프로그램이 시작될 때 i18n이 준비되었음을 확신합니다. 내보기를 렌더링 할 필요가있을 때, 난 그냥 메소드를 호출하기 때문에requirejs, 백본 및 밑줄 템플릿으로 i18next 이상한 동작이 발생했습니다.

var option = { 
    debug: true 
}; 

i18n.init(option).done(function() 
{ 
    Backbone.history.start(); 
}); 

모든 것이 잘 작동하고 그 방법 내에서 내가 할 :

$("body").i18n(); 

내가 완벽하게 현지화 모든게하세요!

문제는 서버에서 데이터를 가져온 후 자신을 렌더링하는 뷰를 다시 렌더링해야한다는 것입니다. 이 경우 해당 컨트롤에서 지역화 된 텍스트가 사라집니다. 데이터가 준비되었을 때 두 번째 렌더링을 차단하면 모든 것이 완벽하게 현지화됩니다. 그렇지 않으면 (데이터가 아직 준비되지 않았을 때 첫 번째 렌더링을 제거하더라도) 데이터가 나타나지 않습니다.

내가 뭘 잘못하고 있니?

덕분에, 마르코

답변

0

당신은 뷰가 렌더링하는 경우도 국제화를 호출해야합니다. 자세한 내용은 다음 질문을 참조하십시오. i18next - brunch and backbone setup

+0

답장을 보내 주셔서 감사합니다. 그것이 내가 한 일이지만 작동하지 않는 것 같습니다. 이상한 사실은 내가 이것을 좋아하면 : $ (템플릿) .i18n(); 처음에는 작동하지만보기를 새로 고칠 때는 작동하지 않습니다. 내가 좋아하는 동안 : $ (". view-class"). i18n(); .view-class는 해당보기에 링크 된 특정 클래스이므로 작동합니다! 그래서 이상한 ... – Marconline

+0

당신은 볼 수있는 코드를 게시 할 수 있습니까? 그것 없이는 문제가 어디에 있는지 알기가 매우 어렵습니다. – drax