Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.07.2014, 16:02
Новичок на форуме
Отправить личное сообщение для dlis Посмотреть профиль Найти все сообщения от dlis
 
Регистрация: 17.07.2014
Сообщений: 1

Инициализация констант
Здравствуйте, я новичок в angular, подскажите пожалуйста, как мне инициализировать константы в самом начале работы приложения. Сейчас они иницилизируются в блоке resolve роутера, но это не вариант, придётся для каждого роута писть один и тот же резолв. Так же если конттроллер вложе в другой, то родительский не увидит данных которые резолвит дочерний.

app.config(function($routeProvider) {
            $routeProvider.when('/', {
                    controller: 'AppCtrl',
                    resolve: {
                        initConstants: function($rootScope, $q, $location) {
                            console.log('start resovling');
                            var deffered = $q.defer();
                            
                            if ($rootScope.CONSTANTS){
                                console.log('constants already resolved!!!');
                                deffered.resolve();
                                return deffered.promise;
                            } 
                        
// загрузка констант с сервера.
                            Visualforce.remoting.Manager.invokeAction(
                                '{!$RemoteAction.MobileController.getConstants}',
                                function(result, event) {
                                    if (event.status){
                                        var jsonStr = result.replace(/&quot\;/g, '"');
                                        $rootScope.CONSTANTS = JSON.parse(jsonStr);
                                        deffered.resolve();
                                        console.log('constants resolved!!!');
                                        
                                        $location.path('/MyLearning');
                                    } else{
                                        console.error('loadConstants - error!');
                                        console.error(event);
                                        deffered.reject(event);
                                    }                                 
                            });    
                    
                            return deffered.promise;     
                        }
                    }                
                }).otherwise({
                  redirectTo: '/'
            });
        });


Хотелость бы как-нибудт инициализировать их в методе run, но как это сделать через promis не знаю
Ответить с цитированием
  #2 (permalink)  
Старый 17.07.2014, 16:13
Аватар для Tek
Tek Tek вне форума
Профессор
Отправить личное сообщение для Tek Посмотреть профиль Найти все сообщения от Tek
 
Регистрация: 22.02.2012
Сообщений: 212

для констант есть :
app.constant('APP_NAME','My App');
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Инициализация переменной в другом скрипте Madgeniy Общие вопросы Javascript 3 19.05.2014 16:03
инициализация плагинов до вставки html-я в DOM FanAizu jQuery 3 19.01.2014 01:16
Автоматическая инициализация плагинов. FanAizu Общие вопросы Javascript 3 08.10.2013 15:26
fotorama повторная инициализация moralist jQuery 5 24.06.2013 00:09
Инициализация плагина при изменении размеров окна браузера prison47 jQuery 12 02.04.2013 03:45