Аргументы обратного вызова AngularJS $routeChangeSuccess

Я новичок в AngularJS, и меня смущает документация, касающаяся прослушивателей событий.

В документации для события $routeChangeSuccess указано следующее:

$routeChangeSuccess Рассылается после разрешения зависимостей маршрута. ngView прослушивает директиву для создания экземпляра контроллера и визуализации представления.

Тип:

цель трансляции:

корневая область

Однако нигде он не ссылается на какие-либо аргументы, которые передаются функции обратного вызова. И все же, большинство примеров, которые я видел здесь, на SO, имеют похожий список функций обратного вызова:

$rootScope.$on("$routeChangeSuccess", function(event, next, current) {
   ...
});

Согласно документам AngularJS, все обратные вызовы имеют первый аргумент как event. Я понимаю. Но откуда взялись next и current? Где это указано в какой-либо документации?


person Eric B.    schedule 24.07.2014    source источник


Ответы (1)


Это было задокументировано в версии ниже 1.2, см. эту старую документацию< /сильный>. Но, похоже, они не заметили, что сигнатуры обратного вызова для их событий broadcast отсутствуют. С другой стороны, если вы не возражаете против чтения из их репозитория github, вы можете проверить это здесь для параметров обратного вызова $routeChangeSuccess.

Обновление: для объекта Route вы можете ссылаться на свойства $route задокументировано здесь.

person ryeballar    schedule 24.07.2014
comment
Потрясающий. Спасибо. Я расстраивался, пытаясь понять, как работают некоторые фрагменты, которые я читал. - person Eric B.; 24.07.2014
comment
Глядя на исходный документ JS и документы 1.2, они оба ссылаются на объект {Route}. Но я тоже не могу найти ссылки на это - только для службы $route. Я не ищу в правильных местах? - person Eric B.; 24.07.2014
comment
Простите мою тупость, но что такое locals содержит разрешенные значения карты resolve. должно означать? Я понимаю, что я новичок в Angular и во всем остальном, но эти документы API делают изучение блоков почти невозможным. Как я должен знать/понимать, к каким полям/функциям у меня есть доступ из объекта $route? - person Eric B.; 24.07.2014
comment
вы можете проверить поставщика $routeProvider docs.angularjs.org/api/ngRoute/provider/$ routeProvider относительно того, что означает resolve, и других объектов, которые могут относиться к документации, которую я предоставил выше. Примечание. Метод when() принимает определение маршрута в качестве второго параметра. - person ryeballar; 24.07.2014