7

私はtranslation.jsonファイルを持っています/locales/en/

{
    "app": {
        "name": "Example App"
    }
}

html、私は持っています:

<a href="/" data-i18n="app.name">

js

$(document).ready(function() {

    var language_complete = navigator.language.split("-");
    var language = (language_complete[0]);

    console.log('language', language);

    $.i18n.init({
        lng: language,
        fallbackLng: false,
        debug: false
    }, function() {
        $('a').i18n();
    });
});

app.nameの代わりに表示されましたExample App。コードで見逃したものは何ですか? ありがとう

4

3 に答える 3

0

useLocalStorageuseDataAttrOptionsを trueに設定する必要があります

$.i18n.init({useLocalStorage: true , useDataAttrOptions:true, ....});
于 2013-08-24T03:47:03.733 に答える
0

i18next V2 の時点で、バックエンドはそのままでは提供されなくなったため (移行ガイドを参照backend)、 init ブロックで構成を定義する必要があります。

backend: {
    loadPath: '/locales/{{lng}}/{{ns}}.json'
},

そうしないと、リソースが読み込まれず、翻訳値がそれぞれのキーにフォールバックします (ソース コードを参照してください)。

于 2016-06-03T01:40:17.117 に答える