2015-04-23 4 views
1

Задача:Угловой управляющий контроллер дважды при перезагрузке браузера

У меня есть приложение с угловыми углами, которое отлично работает. Он имеет 4 контроллера главной страницы, которые загружаются внутри ng-view. Все контроллеры подключены к страницам, которые маршрутизируются через ngRoute.

Когда приложение загружается при первом запуске, оно работает нормально. Но если я перейду на любую из этих страниц и нажмите обновление браузера (f5), контроллеры вызываются дважды. Есть ли причина, по которой они запускаются один раз в первом экземпляре и дважды перезагружаются?

С уважением, ISH

+0

Пожалуйста, поделитесь с вами кодом – Fisherman

+0

Некоторый код поможет нам отладить. – Zee

ответ

0

Общие проблемы, вы должны быть загружены на ваш контроллер Ui-маршрутизатор, а также в HTML-файле. Просто удалите его из файла HTML, всегда используйте маршрутизатор для ввода контроллеров, его просто хорошую практику.

0

Извините, ребята, это была проблема с обещанием с возвратом.

После Войти в I был следующий код

.... 
$scope.someMethod().then(function(_data){ 
... 
    if (something not related to _data) { 
     $route.reload(); 
    } else { 
     $location.path("xcxcxcxcxcx"); 
    } 
... 
}) 

в чем-то способом ..

$scope.something = function(){ 
    var deff = $q.defer(); 
    .... 
    APICALL.callAPI(xxxxx).then(function(data){ 
     deff.resolve(data); 
    }, function(error) { 
     deff.reject(); 
    });   
    return deff.promise; 
}; 

Последнее возвращение deff.promise вернул исполнение к ранее методу и побежал $ route..reload();

Я не 100% уверен, но удаление

возвращение deff.promise;

решена проблема.