Угловой ui.router перезагрузить родительский templateProvider

У меня есть абстрактный базовый шаблон, который загружает навигацию в зависимости от типа пользователя. Эта часть работает при начальной загрузке. Проблема в том, что я не могу перезагрузить родительский templateProvider, когда пользователь вошел в систему или вышел из нее впоследствии. Я попробовал решенияВот перезагрузить родительский шаблон, но шаблоны навигации не затрагиваются. Есть ли способ перезагрузить templateProvider или лучший способ сделать это? В идеале мне не нужно добавлять провайдера nav для каждого дочернего маршрута.

Маршруты:

$stateProvider
        .state('base', {
            abstract: true,
            views: {
                content: {
                    template: '<ui-view></ui-view>',
                },
                nav: {
                    templateProvider: function ($templateFactory, User, $stateParams){
                        if(User.exists()){
                            var url = '/static/html/navs/' + User.get.type + '.html';
                            return $templateFactory.fromUrl(url);
                        }
                        else{
                            return false;
                        }
                    }
                }
            }
        })

        .state('base.index', {
            url: '/',
            controller: 'loginController',
            templateUrl: 'static/html/landing/login.html'
        })

Функция контроллера с попытками отвопрос GitHub:

scope.login_submit = function(e){
    e.preventDefault();
    User.login(scope.login, function(res){
         $state.transitionTo(
             'base.dashboard', null, 
             {reload: true, inherit: true, notify: true }
         );
    });
};

Ответы на вопрос(1)

Ваш ответ на вопрос