使用require.js加载i18next.js时出现问题

Ren*_*ler 2 requirejs

我是require.js的新手,加载i18next.js时遇到问题.

main.js

require(["lib/jquery", "lib/i18next", "config.i18next", "constants"],    
  function(util) {
     console.log("loaded javascript files");
});
Run Code Online (Sandbox Code Playgroud)

和config.i18next.js

var option = {resGetPath: '../translations/__lng__.json' };
i18n.init(option, function(t) { 
    console.log("Language initialization successfull");
});
Run Code Online (Sandbox Code Playgroud)

我总是得到错误

Uncaught ReferenceError: i18n is not defined            config.i18next.js:2
Run Code Online (Sandbox Code Playgroud)

我知道使用i18next的人,传统上加载javascript文件时一切正常.


编辑:

与此同时,我得到了这样的垫片:

requirejs.config({
    shim: {
        'lib/i18next' : ['lib/jquery'],
    }
});

require(["lib/i18next"], function(i18n) {
    var options = {
        resGetPath: 'translations/__lng__.json',
        preload: ['de', 'en'] 
    };
    i18n.init(options, function(t) { 
    });
});
Run Code Online (Sandbox Code Playgroud)

我可以在其他文件中翻译$.t("key");,但是现在我无法以编程方式更改语言,i18n.setLng()因为无法找到变量ReferenceError: Can't find variable: i18n.

jam*_*uhl 5

--- i18next现在带有amd build ---

这应该使用带有amd的i18next来解决所有问题.你可以在http://i18next.com上找到