Мне нужна помощь! Я попытался изменить defaultLocale в моем контроллере.js, и я использую i18n с угловым. Строкой является:
angular.module('starter.controllers', ['ngLocalize', 'ngLocalize.Config'])
.value('localeConf', {
basePath: 'js/Locales',
defaultLocale: 'pt-BR',
sharedDictionary: 'common',
fileExtension: '.lang.json',
...
директива:
.controller('ConfiguracaoCtrl', function ($scope,... , locale, localeConf) {...
и функция:
$scope.selecionaIdioma = function(idioma){
localeConf.defaultLocale = idioma; //tried to set a language
localStorage.setItem("appIdioma",idioma);
}
У меня есть файл для перевода языков: js> locales> es-CL> common.lang.json и js> locales> pt-BR> common.lang.json
"DefaultLocale" изменился, но не язык. Пожалуйста, любая идея, что я делаю неправильно?
Вы можете использовать ngStorage: https://github.com/gsklee/ngStorage
Включите lib в ваше приложение: angular.module('app', ['ngStorage']).
Затем используйте в контроллере, введите в свой контроллер как: $localStorage
Затем вы можете использовать $localStorage.lanaguage = 'something'
И снова получите информацию: $scope.language = $localStorage.language
Я понял следующее.
Я объявил глобальную переменную:
var idioma = window.localStorage.appIdioma;
и установил:...
defaultLocale: idioma,
работал на меня.