Установить заголовок страницы с помощью UI-Router
Я перевожу мое приложение на основе AngularJS для использования ui-router вместо встроенной маршрутизации. Я настроил как показано ниже
.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/home');
$stateProvider
.state('home', {
url: '/home',
templateUrl : 'views/home.html',
data : { pageTitle: 'Home' }
})
.state('about', {
url: '/about',
templateUrl : 'views/about.html',
data : { pageTitle: 'About' }
})
});
Как я могу использовать переменную pageTitle, чтобы динамически установить заголовок страницы? Используя встроенную маршрутизацию, я мог сделать
$rootScope.$on("$routeChangeSuccess", function(currentRoute, previousRoute){
$rootScope.pageTitle = $route.current.data.pageTitle;
});
а затем связать переменную в HTML, как показано ниже
<title ng-bind="$root.pageTitle"></title>
Есть ли подобное событие, которое я могу подключить с помощью ui-router? Я заметил, что есть функции 'onEnter' и 'onExit', но они, похоже, привязаны к каждому состоянию, и мне потребуется повторить код, чтобы установить переменную $ rootScope для каждого состояния.