i18следующий с несколькими HTML страницами - PullRequest
0 голосов
/ 28 февраля 2020

У меня есть веб-страница, которая состоит из множества HTML страниц, связанных с тегами привязки. Для переводов этой страницы я использую i18next. На каждой странице переводы, кажется, работают, но проблема в том, что после того, как я изменил язык и перешел на другую страницу, выбранный язык не применяется и снова устанавливается по умолчанию. Я читал о sessionStorage, так как он может решить эту проблему, но не может реализовать ее. js для переключения языков:

function changeLanguageManual (lang) {
if (lang) {
    i18next.changeLanguage(lang);

}
jqueryI18next.init(i18next, $);
$('body').localize();

}

В основном я хочу добиться того, чтобы при переходе на другую внутреннюю страницу HTML выбранный язык оставался тем же, и не установлен по умолчанию.

1 Ответ

0 голосов
/ 28 февраля 2020

В документации API для i18next говорится, что changeLanguage - это асинхронный метод c (возвращает Promise). Попробуйте вызвать jQuery i18 init внутри обратного вызова.

    i18next.changeLanguage('en', (err, t) => {
        if (err) return console.log('something went wrong loading', err);
        jqueryI18next.init(i18next, $);
        $('body').localize();
    });
...