Форум программистов, компьютерный форум, киберфорум
Angular/AngularJS
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Вежливость-главное оружие
 Аватар для some_name
233 / 234 / 86
Регистрация: 19.02.2013
Сообщений: 1,446

Как заставить обновиться модели AngulaJS

28.05.2015, 18:05. Показов 1483. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Имеется локализация для сайта. Делал с помощью фильтров:
JavaScript
1
{{'USERS' | xlat}}
Как здесь.

Вот разметка, "отвечающая" за выбор языка:
HTML5
1
2
3
4
5
6
7
8
<div class="nav navbar-nav navbar-right navbar-text  navigation-group">
            <label class="col-sm-3 control-label">{{$scope.localization.language}}</label>
            <select id="select-language" data-ng-model="currentCulture" data-ng-change="setCurrentLanguage(currentCulture)">
                <option value='en' selected="selected">{{'ENGLISH' | xlat}}
                <option value='ru'>{{'RUSSIAN' | xlat}}
                <option value='fr'>{{'FRENCH' | xlat}}
            </select>
        </div>
Вот сам фильтр.
Вот метки для локализации.

При выборе языка, вызывается метод setCurrentLanguage:
JavaScript
1
2
3
4
5
6
$scope.setCurrentLanguage = function(language) {
            xlatService.setCurrentLanguage(language);
            $localStorage.language = language;
            location.reload(); 
            $route.reload();
        };
Проблема, как заставить обновиться модели AngulaJS, т.е. чтобы фильтры отработали снова? Пробовал использовать $route.reload(), location.reload() по отдельности, вместе. По-разному вообщем. Не работает. Пробовал также не использовать local storage - тоже самое.

Если кто-то делал что-то подобное или знает варианты решения - прошу помочь.

Заранее спс!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.05.2015, 18:05
Ответы с готовыми решениями:

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

Как заставить сайт написанный на 5.3 заставить работать на 5.6? Как принудительно включить register_globals?
Есть древний сайт. Работает на php 5.3. Как объяснил разработчик данного сайта - все дело в register_globals, надо принудительно включить...

Как обновиться с 7.7 на 8.2?
Есть 5 компов в сети и их надо обновить, сохраняя базу

4
134 / 130 / 57
Регистрация: 29.12.2011
Сообщений: 359
28.05.2015, 18:09
$scope.$apply() не помогает?
0
Вежливость-главное оружие
 Аватар для some_name
233 / 234 / 86
Регистрация: 19.02.2013
Сообщений: 1,446
28.05.2015, 18:15  [ТС]
Цитата Сообщение от JokerNN Посмотреть сообщение
$scope.$apply() не помогает?
JavaScript
1
2
3
4
5
$scope.setCurrentLanguage = function(language) {
            $localStorage.language = language;
            xlatService.setCurrentLanguage(language);
            $scope.$apply();
        };
Выдает такой выхлоп:
Кликните здесь для просмотра всего текста

[18:14:33.703] "Error: [$rootScope:inprog] $apply already in progress
http://errors.angularjs.org/1.3.9/$rootScope/inprog?p0=%24apply
minErr/<@http://localhost:8080/flowerty/resources/js/external/angular.js:63
beginPhase@http://localhost:8080/flo...nal/angular.js:14738
Scope.prototype.$apply@http://localhost:8080/flowerty/resources/js/external/angular.js:14482
$scope.setCurrentLanguage@http://localhost:8080/flowerty/resources/js/app/main/controller/MainController.js:61
$parseFunctionCall@http://localhost:8080/flowerty/resources/js/external/angular.js:12332
Scope.prototype.$eval@http://localhost:8080/flowerty/resources/js/external/angular.js:14384
ngChangeDirective<.link/<@http://localhost:8080/flowerty/resources/js/external/angular.js:20496
@http://localhost:8080/flowerty/resources/js/external/angular.js:23138
forEach@http://localhost:8080/flower...nal/angular.js:323
@http://localhost:8080/flowerty/resources/js/external/angular.js:23136
writeToModelIfNeeded@http://localhos...nal/angular.js:23129
@http://localhost:8080/flowerty/resources/js/external/angular.js:23123
validationDone@http://localhost:8080...nal/angular.js:23051
processAsyncValidators@http://localh...nal/angular.js:23034
@http://localhost:8080/flowerty/resources/js/external/angular.js:22979
@http://localhost:8080/flowerty/resources/js/external/angular.js:23116
@http://localhost:8080/flowerty/resources/js/external/angular.js:23084
@http://localhost:8080/flowerty/resources/js/external/angular.js:23214
@http://localhost:8080/flowerty/resources/js/external/angular.js:23188
setupAsSingle/</<@http://localhost:8080/flowerty/resources/js/external/angular.js:25498
Scope.prototype.$eval@http://localhost:8080/flowerty/resources/js/external/angular.js:14384
Scope.prototype.$apply@http://localhost:8080/flowerty/resources/js/external/angular.js:14483
setupAsSingle/<@http://localhost:8080/flowerty/resources/js/external/angular.js:25496
n.event.dispatch@http://localhost:80...y-2.1.3.min.js:3
n.event.add/r.handle@http://localhost:8080/flowerty/resources/js/external/jquery-2.1.3.min.js:3
"
0
134 / 130 / 57
Регистрация: 29.12.2011
Сообщений: 359
28.05.2015, 21:51
Лучший ответ Сообщение было отмечено some_name как решение

Решение

JavaScript
1
$window.location.reload();
А вот так?
0
Вежливость-главное оружие
 Аватар для some_name
233 / 234 / 86
Регистрация: 19.02.2013
Сообщений: 1,446
28.05.2015, 21:53  [ТС]
Цитата Сообщение от JokerNN Посмотреть сообщение
$window.location.reload();
Работает! Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.05.2015, 21:53
Помогаю со студенческими работами здесь

Как обновиться с 7.7 до 8-ки?
Доброго времени . Стоит 1с 7.7 нужно перейти на 8ку .8.2 или 8.3 скажите как это сделать без потери файлов как перенести базу на восьмерку...

Как лучше обновиться?
Зарезервировал в своей Win7 обновление до Win10, потом автообновление отключил. Т.к. злые языки утверждают что скоро поддержка Win7...

как обновиться до windows 8
у меня стоит пиратка wind7, хочу купить на розетке 8-ку эту, но это походу обновление, с него возможно обновиться, если винда не лицуха?

Как убрать предложение обновиться до windows 10 ?
Доброго времени суток! Вопрос! Как убрать обновление ОС 10 на на моем семерке ? Я уже не могу работать нормально. Уже нету никаких сил -...

как заставить писиспикер заставить хоть чтото проскрипеть?
помогите дураку как заставить писиспикер заставить хоть чтото проскрипеть??? в бэйсике с этим не каких проблем не было а вот в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru