я определил некоторые маршруты:Как получить название маршрута при изменении местоположения?
angular.module('myApp', [])
.config('$routeProvider', function($routeProvider) {
$routeProvider.when('/aaa', { templateUrl: '/111.html' })
.when('/bbb', { templateUrl: '/222.html'});
});
И я хочу, чтобы получить имя маршрута, когда пользователь изменяет маршрут:
angular.module('myApp')
.run(['$rootScope', function($rootScope) {
$rootScope.$on('$routeChangeSuccess', function(scope, current, pre) {
// how to get current route name, e.g. /aaa or /bbb
console.log('Current route name: ' + ???);
}
}]);
Но я не знаю, как получить его. Я могу получить templateUrl
, но не название маршрута.
UPDATE
Более сложный случай использования:
$routeProvider.when('/users/:id', { templateUrl: '/show_user.html' })
Если путь тока:
/users/12345
Он должен соответствовать /users/:id
, но как я могу знать, какие маршрут сопоставляется и для получения маршрута имя /users/:id
?
@Flex, Смотрите мой обновленный вопрос :) – Freewind
FYI: Первый аргумент четным обработчику угловому не сфера, это событие , Я отредактировал фрагмент кода, чтобы отразить это. FWIW, объект currentScope доступен для объекта события. –
У него плохой синтаксис, и даже после исправления не работает: Неизвестный провайдер: $ routeParamsProvider <- $ routeParams – Mike