2017-01-28 15 views
0

Я использую $ state.go («titulos», params) для загрузки страницы титулов, и в этом случае родительский контроллер (emissao) не загружается снова , Но когда я вызываю внуков $ state.go («titulos.fluxos», params), родительский контроллер (titulos) загружается снова. Я не хочу, чтобы это произошло, потому что родительский контроллер уже загружен, это нежелательное поведение. Я не знаю, почему первый ребенок отлично работает, не загружая родителя, но для внука (titulos.fluxos) излишне загружает своего родителя (титулось). Как я могу это решить? Пожалуйста.Angularjs ui-router с вложенными представлениями загружает родительский контроллер для внуков

$stateProvider.state('emissao', { 
    url: '/emissao', 
    views: { 
     'main': { 
      controller: 'emissaoCtrl', 
      templateUrl: 'view/emissao.html' 
     } 
    }, 
    resolve: { 
     emissoes: function (cadastroAPI) { 
      return cadastroAPI.listar('emissao'); 
     } 
    } 
}); 

$stateProvider.state('titulos', { 
    parent: 'emissao', 
    url: '/titulos', 
    controller: 'titulosCtrl', 
    templateUrl: 'view/titulo.html', 
    resolve: { 
     titulos: function (cadastroAPI, $stateParams) { 
      return cadastroAPI.listarTitulos($stateParams.parent.obj); 
     } 
    }, 
    params: { 
     parent: null, 
     container: null 
    } 
}); 

$stateProvider.state('titulos.fluxos', { 
    url: '/fluxos', 
    controller: 'fluxosCtrl', 
    templateUrl: 'view/fluxo.html', 
    resolve: { 
     fluxos: function (fluxoAPI, $stateParams) { 
      return fluxoAPI.listar($stateParams.parent.obj.Id); 
     } 
    }, 
    params: { 
     parent: null, 
     container: null 
    } 
}); 

ответ

0

Я обнаружил проблему! На самом деле, нормальное поведение не загружает родительский контроллер, моя проблема в том, что параметры «params» имели одно и то же имя «родительский» как в родительском контроллере «titulos», так и в дочернем «fluxos», и это вызывало ненужный вызов родительский контроллер.

+0

Я не знаю, как я положил этот ответ как принятый :-( – evbell