setDefaulrLang () используется только для всех пользователей в приложении в appComponent или если вы получаете местоположение пользователя из браузера, тогда вы можете изменить его.На мой взгляд, лучший способ узнать, как работают файлы .json, все файлы должны иметь одинаковые строки, поэтому в en.json не должно быть строк, таких как "user": "User"
и в файле es user: {...}
, потому что первая из них - это имя переменной: строковые данные и втораяодин - это имя переменной + данные карты !!!
пример того, как это должно быть написано:
en.json
"USER" : {
"user": "user"
}
es.json
"USER" : {
"user": "Alejandro"
"COMPANY" : "Miembro"
"VENDOR" : "Vendedor"
}
fr.json:
"USER" : {
"user": "Pedro"
"DEFAULT": "Consommateur"
"COMPANY" : "Membre"
"VENDOR" : "Vendeur"
}
{{ 'USER.user' | translate }}
Чтобы изменить язык в функции браузера пользователя для вызова события кнопки, который будет использовать corect languege.
$('.dropdown-menu>li>button').on('click', function () {
switch (this.id) {
case "en":
Cookies.set('user_lang', 'en', { expires: 60 });
break;
case "no":
Cookies.set('user_lang', 'no', { expires: 60 });
break;
case "pl":
Cookies.set('user_lang', 'pl', { expires: 60 });
break;
default:
}
});
function langTriger(code) {
$(code).trigger('click'); // trigger button to call back-end event
};
function trigerUserLang() {
switch (Cookies.get('user_lang')) {
case "en":
langTriger('#en');
break;
case "no":
langTriger('#no');
break;
case "pl":
langTriger('#pl');
break;
default:
};
}