2017-11-12 6 views
0
정의되지 않은

의 특성 'toResolveHierarchy'을 읽을 수 없습니다 : 내가 그렇게 (EN-UK) 언어 코드를 전달하여 <code>i18next</code> 언어 변경 함수를 호출

var changeLng = function (varLng) { 
    i18next.changeLanguage('en', (err, t) => { 
    if (err) return console.log('something went wrong loading', err); 
    t('applog'); // -> same as i18next.t 
    }); 
}; 

내가 가지고 다음 문제 :

VM4081 i18next.js:1912 Uncaught TypeError: Cannot read property 'toResolveHierarchy' of undefined 
    at setLng (VM4081 i18next.js:1912) 
    at I18n.changeLanguage (VM4081 i18next.js:1927) 
    at changeLng (VM4079 langUK.js:23) 
    at HTMLImageElement.<anonymous> (VM4079 langUK.js:8) 
i18next 시도가 실행할 때

나는 뭔가 잘못되어 가고 있다고 가정 :

_this4.languages = _this4.services.languageUtils.toResolveHierarchy(l); 

하지만 제대로 실행하려면 필요한 것을 볼 수 없습니다. 미리 지원해 주셔서 감사합니다. 잭

답변

0

i18next을 올바르게 초기화하셨습니까? 이 코드는 나를 위해 작동 :

i18next.init({ 
 
    lng: 'en', 
 
    debug: true, 
 
    resources: { 
 
    en: { 
 
     translation: { 
 
     "key": "hello world" 
 
     } 
 
    } 
 
    } 
 
}, function(err, t) { 
 
    // initialized and ready to go! 
 
    console.log("Ready to go!"); 
 
}); 
 

 
var changeLng = function(varLng) { 
 
    i18next.changeLanguage('en', (err, t) => { 
 
    if (err) return console.log('something went wrong loading', err); 
 
    t('applog'); // -> same as i18next.t 
 
    }); 
 
}; 
 

 
changeLng()
<script src="https://unpkg.com/i18next/i18next.min.js"></script>

편집 :took this from the documentation