2013-06-10 1 views
0

우리는 html/css/js를 사용하는 앱을 개발 중이며 i18next을 사용하여 번역 된 문자열을 표시합니다.js 경고에서 i18next를 사용하여 번역 된 문자열을 어떻게 표시합니까?

번역을 표시하기 위해 태그 내에 속성을 포함합니다. 예 :

<a href="#top" id="agreement" data-i18n="text_agreement">利用規約</a><label for="checkbox2" data-i18n="text_agree">に同意する</label> 

이 외에도 앱은 자바 스크립트 파일을 사용하여 문자열을 번역으로 바꿉니다. 예를 들어 위의 코드는 다음과 일치합니다.

en: { translation: { 
text_agreement: 'Agree to EULA' 
} } 

이 변환 방법은 HTML 태그에 적용됩니다. 내가 모르는 것은 js 코드 내에서 문자열을 변환하는 방법이다. 예를 들어, 번역 된 문자열을 어떻게 표시합니까?

element.alert('なまえを記入してください。'); 

도움을 주시면 대단히 감사하겠습니다.

답변

2

초기화 기능은 문자열을 번역하는 기능을 제공합니다. ;)

이 기능을 창 개체에 '넣을 수 있으므로 코드에서 어디에서나 사용할 수 있습니다.

i18n.init(function(t) { 
    window.t = t("Your string here"); 
}); 
// ... more code 
// Now you can use window.t to translate 
element.alert(window.t('Your string')); 

그러나이 (!)가 비동기의주의, 그래서 t()가 정의되지 않은 것으로, 콘솔이 말한다 발생할 수 있습니다. http://jamuhl.github.io/i18next/pages/doc_init.html

:

또한 문서를 보라 그래서 일단 i18next를 초기화 한 후 window.t();

를 사용

관련 문제