2014-11-27 4 views
0

Я пытаюсь установить параметр action в $routeProvider. Проблема в том, что я получаю ошибку $route.current is undefined. Зачем ?

myApp.config(['$routeProvider', function($routeProvider){ 
    $routeProvider.when('/abc', { 
         ... 
         action: 'X' 
        }) 
}]); 

myApp.run(['$rootScope', '$route', '$location', 'authService', 
    function ($rootScope, $location, $route, authService) { 
     $rootScope.$on('$routeChangeSuccess', function (currentRoute, previousRoute) { 
      if ($route.current.action) { 
       $rootScope.action = $route.current.action; 
      } 
     }); 
    )] 
+0

У вас есть 'currentRoute' в качестве параметра, по какой-либо причине вы его не используете? (кстати, вам, вероятно, придется изменить эту подпись на 'function (ev, currentRoute, previousRoute)') – Clive

ответ

-2

Я думаю, что параметры параметров имеют неправильный порядок, следуя правильному порядку.

function ($rootScope, $route, $location, authService) { 

Также, как указано в @Clive, возможно, вам необходимо изменить подпись функции.