Angularjs ui-router абстрактное состояние с разрешением

Можно ли создать абстрактное состояние с помощью ui-router, которому необходимо разрешить данные? Мне нужно загрузить верхнюю половину страницы с информацией о профиле, а затем добавить суб-навигатор, который загружает другие данные в нижней части страницы. Идея состоит в том, что абстрактное состояние будет загружать информацию профиля каждый раз, независимо от того, в каком дочернем состоянии я включен. Кажется, это не работает.

Пример:

.state('app.profile', { abstract: true, url: 'user/:username', views: { content: { templateUrl: 'views/frontend/profile.html', controller: 'ProfileCtrl', resolve: { data: ['$stateParams', 'ProfileService', function ($stateParams, ProfileService) { var username = $stateParams.username; return ProfileService.getProfile(username); }] } } } }) .state('app.profile.something', { url: '', views: { profile: { templateUrl: 'views/frontend/profile.something.html', controller: 'ProfileCtrl', resolve: { data: ['$stateParams', 'ProfileService', function ($stateParams, ProfileService) { var username = $stateParams.username; return ProfileService.getProfileSomething(username); }] } } } }) 

Решение здесь состоит в том, чтобы различать имена разрешенных данных. Проверьте этот ответ:

  • угловой родительский статус и разрешить (вложенные разрешения)

И его плункер

Поэтому в нашем случае нам понадобится это изменение в родительском

 resolve: { dataParent: ['$stateParams', 'ProfileService', function ($stateParams, ProfileService) { var username = $stateParams.username; return ProfileService.getProfile(username); }] } 

и это в детском

 resolve: { dataChild: ['$stateParams', 'ProfileService', function ($stateParams, ProfileService) { var username = $stateParams.username; return ProfileService.getProfileSomething(username); }] } 

поэтому вместо того, чтобы работать с разрешением: {data: …} в родительском и дочернем, мы бы получили следующие:

 // parent state resolve : { dataParent: ... } // child state resolve : { dataChild: ... } 

Один рабочий пример должен быть лучше, чем другие слова …

  • AngularJS UI Router - изменить URL-адрес без перезагрузки
  • Угловой UI-маршрутизатор - вложенные состояния с несколькими макетами
  • путь динамического шаблона ui-router
  • Установить заголовок страницы с помощью UI-Router
  • Как отправлять и извлекать параметры с помощью $ state.go toParams и $ stateParams?
  • Что такое Угловой ui-router жизненный цикл? (для отладки бесшумных ошибок)
  • angularjs ui-router странное поведение с дополнительным сегментом в маршруте
  • Как определить, будет ли пользователь нажимать кнопку «Назад» браузера в Angularjs
  • Вложенные состояния или представления для макета с помощью leftbar в ui-router?
  • Давайте будем гением компьютера.